ST意法半导体
直播中

fdjslkjd

9年用户 1190经验值
擅长:光电显示
私信 关注
[问答]

使用CRL“ARM CMSIS SIN COS”和SW4STM32发布构建simulink项目代码报错怎么解决?

您好,我在 PIL 模式下构建 PMSM_FOC 示例时遇到问题。问题在于使用 CRL:“ARM CMSIS SIN CON”。在包含路径 (-l) 中手动添加 arm_math.h 目录 ( C:MATLABSTM32-MATSTM32CRLCMSIS_SIN_COS_CRLFastMathFunctions)后,构建过程会为 100 个元素返回以下错误代码。
  • Building file: C:/matlab/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/PMSM_FOC_Compute/Src/arm_cos_f32.c
  • Invoking: MCU GCC Compiler
  • C:MATLABSTM32-MATSTM32STM32demosMotorControlFOCPMSM_FOC_Compute_PILSW4STM32PMSM_FOC_ComputeDebug
  • arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -DUSE_HAL_DRIVER -DARM_MATH_CM4 '-DMemUnit_T=uint8_T' '-DMEM_UNIT_BYTES=1' '-DRtiOSTREAM_TX_BUFFER_BYTE_SIZE=128' '-DRTIOSTREAM_RX_BUFFER_BYTE_SIZE=128' '-DCODER_ASSUMPTIONS_ENABLED=1' -DCODE_INSTRUMENTATION_ENABLED -DCA_CHECK_FLOATING_POINT_ENABLED -DCA_CHECK_LONG_LONG_ENABLED -DCA_CHECK_DAZ_ENABLED -DSTM32F429xx -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Inc" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/STM32F4xx_HAL_Driver/Inc" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/CMSIS/Device/ST/STM32F4xx/Include" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/CMSIS/Include" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/PMSM_FOC_Compute/Inc" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/slprj/stm32/PMSM_FOC_Compute" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/slprj/stm32/PMSM_FOC_Compute/coderassumptions" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/slprj/stm32/PMSM_FOC_Compute/pil" -I"C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/slprj/stm32/_sharedutils" -I"C:/MATLAB/STM32-MAT/STM32/addSrc/inc" -I"C:/MATLAB/STM32-MAT/STM32/pil/stm32SerialRtiostream" -I"C:/Program Files/MATLAB/R2019b/extern/include" -I"C:/Program Files/MATLAB/R2019b/extern/include/coder/connectivity/CodeInstrTgtAppSvc" -I"C:/Program Files/MATLAB/R2019b/extern/include/coder/connectivity/CoderAssumpTgtAppSvc" -I"C:/Program Files/MATLAB/R2019b/extern/include/coder/connectivity/XILTgtAppSvc" -I"C:/Program Files/MATLAB/R2019b/rtw/c/ert" -I"C:/Program Files/MATLAB/R2019b/rtw/c/src" -I"C:/Program Files/MATLAB/R2019b/rtw/c/src/ext_mode/common" -I"C:/Program Files/MATLAB/R2019b/simulink/include" -I"C:/Program Files/MATLAB/R2019b/toolbox/coder/rtiostream/src" -I"C:/Program Files/MATLAB/R2019b/toolbox/coder/rtiostream/src/utils" -I"C:/Program Files/MATLAB/R2019b/toolbox/rtw/targets/pil/c" -I"C:/MATLAB/STM32-MAT/STM32/CRL/CMSIS_SIN_COS_CRL/FastMathFunctions"  -Og -g3 -Wall -fmessage-length=0 -ffunction-sections -c -fmessage-length=0 -MMD -MP -MF"MATLAB/arm_cos_f32.d" -MT"MATLAB/arm_cos_f32.o" -o "MATLAB/arm_cos_f32.o" "C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/PMSM_FOC_Compute/Src/arm_cos_f32.c"
  • In file included from C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:141:0,
  •                  from C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/PMSM_FOC_Compute/Inc/STM32_Config.h:40,
  •                  from C:/MATLAB/STM32-MAT/STM32/CRL/CMSIS_SIN_COS_CRL/FastMathFunctions/arm_math.h:256,
  •                  from C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/PMSM_FOC_Compute/Src/arm_cos_f32.c:30:
  • C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f429xx.h:188:3: error: unknown type name '__IO'
  •    __IO uint32_t SR;     /*!< ADC status register,                         Address offset: 0x00 */
  •    ^~~~
  • C:/MATLAB/STM32-MAT/STM32/STM32demos/MotorControl/FOC/PMSM_FOC_Compute_PIL/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f429xx.h:188:17: error: expected ':', ',', ';', '}' or '__attribute__' before 'SR'
  •    __IO uint32_t SR;     /*!< ADC status register,                         Address offset: 0x00 */
有人可以帮助我吗?我试图添加 arm_cm4.h 和 stm32f429xx.h ditectories,我有同样的错误。








回帖(1)

李晶

2023-1-16 15:36:29
>现在程序编译并且 PIL 使用 simulink 运行。
这是一个示例项目。
如果它的概念证明,那么作品就足够了。
>我尝试将 include 放在主文件或 foc_compute 文件 中,但在这种情况下问题又回来了
我没有使用“arm_math.h”。我的猜测是 arm_math.h 和 __CMSIS_GENERIC 的情况源于它期望数学代码与硬件分离。您能否组织您的应用程序,使包含“arm_math.h”的“数学”模块不包含“stm32f429xx.h”?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分