This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Getting errors after including arm_math.h

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

Parents
  • So compare the cube-generated project with the working ones to see where it's going wrong!

    Check the Cube documentation to see if there is any specific guidance on this.

    Look for Cube examples which use the CMSIS DSP

    Note that stm32cubemx is nothing to do with Keil or ARM - you need to go to ST for support with that.

Reply
  • So compare the cube-generated project with the working ones to see where it's going wrong!

    Check the Cube documentation to see if there is any specific guidance on this.

    Look for Cube examples which use the CMSIS DSP

    Note that stm32cubemx is nothing to do with Keil or ARM - you need to go to ST for support with that.

Children
No data