yangjy1015 发表于 2019-8-6 17:45:34

Stm32L4 的dsp库设置和M4的有什么不一样的吗?

我是按这个步骤加的
1. 添加宏定义ARM_MATH_CM4,__CC_ARM,ARM_MATH_MATRIX_CHECK,ARM_MATH_ROUNDING
2. 将 arm_cortexM4l_math.libarm_cortexM4lf_math.lib 加入工程
3.#include "arm_math.h"
   #include "arm_const_structs.h"
4.           arm_cfft_f32(&arm_cfft_sR_f32_len1024,ADC_value,0,1);   
        arm_cmplx_mag_f32(ADC_value,FFT_buff,1024);                  
        arm_max_f32(FFT_buff,1024,&amp,&freq);

程序可以运行,编译的时候会产生Warning: L6989W: Could not apply patch sdcomp-29491-629360 to instruction VPOP   {d8-d15} at offset 0x1c2, instruction is within an IT block and is not the last instruction for arm_cfft_radix8_f32.o(.text).
生成的结果和matlab的结果很不一样,不知道问题出在哪

butterflyspring 发表于 2019-9-16 10:22:47

从警告信息上看,像是VPOP这个指令有异常

mikecai 发表于 2019-9-16 11:16:21

L4 的库和M4的确不能混用,L4 包含浮点和低功耗;L4 只能用 L4 的库,M4 只能用 M4 的库,否则Warning: L6989W 绝对出来。如果你是M4 的话,分别加入库arm_cortexM4lf_math.lib, arm_cortexM4l_math.lib试下;如你用L4,您得更换库文件

xmshao 发表于 2019-9-16 14:59:39

提醒下:
1、你的相关函数是否调用对了,你的点数跟你的radix_n是否匹配;
2、你用硬件FPU的话,添加arm_cortexM4lf_math.lib就可以了。
页: [1]
查看完整版本: Stm32L4 的dsp库设置和M4的有什么不一样的吗?