STM32F030的FFT
在 STM32CubeIDE 中,我使用 libarm_cortexM0l_math.a,文件位于STM32Cube_FW_F0_V1.11.0\Drivers\CMSIS\Lib\GCC我正在使用arm_rfft_q15。生成错误:error: undefined reference to `arm_bitreversal_16'.这函数是在文件 arm_bitreversal2.s,已经添加了 .h 文件,位于 STM32Cube_FW_F0_V1.11.0\Drivers 中\CMSIS\DSP\Include .c文件位于STM32Cube_FW_F0_V1.11.0\Drivers\CMSIS\DSP\Source 。请教问题如何解决?建议检查STM32CubeIDE的编译日志,确认arm_bitreversal2.s是否被正确编译并链接。 直接用CMSIS-DSP源码。 检查libarm_cortexM0l_math.a是否被正确链接。 检查CMSIS-DSP版本是否兼容。 在STM32CubeIDE中使用CMSIS-DSP库时,遇到undefined reference to 'arm_bitreversal_16'错误,通常是因为链接器未正确包含汇编文件(如arm_bitreversal2.s)或库文件路径配置不当
arm_bitreversal2.s是汇编文件,需包含在编译过程中。确认其路径:STM32Cube_FW_F0_V1.11.0/Drivers/CMSIS/DSP/Source
确保在STM32CubeIDE的工程属性中正确添加了CMSIS-DSP头文件路径
路径设置:Project > Properties > C/C++ General > Paths and Symbols> Includes > GNU C。
手动添加汇编文件:在STM32CubeIDE中,右键点击工程 > New > Source Folder,将arm_bitreversal2.s所在目录(如CMSIS/DSP/Source)添加到源文件夹。
看看STM32CubeIDE能识别.s文件。在Project > Properties > C/C++ Build > Settings > ToolSettings > MCU GCC Assembler中,确认汇编器已启用。
链接CMSIS-DSP库,在工程属性中指定库文件路径:
STM32Cube_FW_F0_V1.11.0/Drivers/CMSIS/Lib/GCC
可以直接复制arm_bitreversal2.s到工程目录下的Src文件夹,并确保其在编译列表中。
在Libraries选项卡中添加库名arm_cortexM0l_math(无需后缀.a)。确保链接顺序正确,避免与其他库冲突。
页:
[1]