2020-01-15 02:37 AM
Hello i want to use dsp in my project in Keil IDE for that i have to include arm_math.h.
In that case i am getting 30 errors
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1183): error: #79: expected a type specifier
__STATIC_FORCEINLINE int32_t __SMMLA(
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1183): error: #101: "int32_t" has already been declared in the current scope
__STATIC_FORCEINLINE int32_t __SMMLA(
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1183): error: #141-D: unnamed prototyped parameters not allowed when body is present
__STATIC_FORCEINLINE int32_t __SMMLA(
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1188): error: #20: identifier "sum" is undefined
return (sum + (int32_t) (((int64_t) x * y) >> 32));
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1188): error: #20: identifier "x" is undefined
return (sum + (int32_t) (((int64_t) x * y) >> 32));
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1188): error: #20: identifier "y" is undefined
return (sum + (int32_t) (((int64_t) x * y) >> 32));
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1801): error: #757: function "int32_t" is not a type name
int32_t shift,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1816): error: #757: function "int32_t" is not a type name
int32_t shift,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1914): error: #757: function "int32_t" is not a type name
int32_t resetStateFlag);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1932): error: #757: function "int32_t" is not a type name
int32_t resetStateFlag);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(1951): error: #757: function "int32_t" is not a type name
int32_t resetStateFlag);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4585): error: #757: function "int32_t" is not a type name
int32_t *pTapDelay; /**< points to the array of delay values. The array is of length numTaps. */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4598): error: #757: function "int32_t" is not a type name
int32_t *pTapDelay; /**< points to the array of delay values. The array is of length numTaps. */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4611): error: #757: function "int32_t" is not a type name
int32_t *pTapDelay; /**< points to the array of delay values. The array is of length numTaps. */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4624): error: #757: function "int32_t" is not a type name
int32_t *pTapDelay; /**< points to the array of delay values. The array is of length numTaps. */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4659): error: #757: function "int32_t" is not a type name
int32_t * pTapDelay,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4695): error: #757: function "int32_t" is not a type name
int32_t * pTapDelay,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4733): error: #757: function "int32_t" is not a type name
int32_t * pTapDelay,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(4771): error: #757: function "int32_t" is not a type name
int32_t * pTapDelay,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5544): warning: #174-D: expression has no effect
int32_t i; /* Index variable */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5544): error: #65: expected a ";"
int32_t i; /* Index variable */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5548): error: #20: identifier "i" is undefined
i = (int32_t) ((x - S->x1) / xSpacing);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5601): warning: #174-D: expression has no effect
int32_t index; /* Index to read nearest output values */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5601): error: #65: expected a ";"
int32_t index; /* Index to read nearest output values */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5606): error: #20: identifier "index" is undefined
index = ((x & (q31_t)0xFFF00000) >> 20);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5659): warning: #174-D: expression has no effect
int32_t index; /* Index to read nearest output values */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5659): error: #65: expected a ";"
int32_t index; /* Index to read nearest output values */
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5664): error: #20: identifier "index" is undefined
index = ((x & (int32_t)0xFFF00000) >> 20);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5664): error: #31: expression must have integral type
index = ((x & (int32_t)0xFFF00000) >> 20);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5664): error: #18: expected a ")"
index = ((x & (int32_t)0xFFF00000) >> 20);
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5940): error: #757: function "int32_t" is not a type name
int32_t * circBuffer,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5941): error: #757: function "int32_t" is not a type name
int32_t L,
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.6.0\CMSIS\DSP\Include\arm_math.h(5943): error: #757: function "int32_t" is not a type name
is there any special thing to do for including arm_math.h
Solved! Go to Solution.
2020-01-16 06:15 AM
hello, when i included arm_math.h from keil it's taking different path
when i generated program from cubemx that time select copy_all_used_libraries_into_the_project in project manager then it will generate dsp header files into my project than i include that arm_math.h header file from project_name/Drivers/CMSIS/DSP/Include path.
and give that include path in c/c++ project
than it will work
2020-02-12 02:30 PM
But CubeMX generate * @version V1.5.3
in CMSIS 5.60 version is 1.7 (in header 1.6)