Image
Image

wang6623

+ 关注

粉丝 0     |     主题 69     |     回帖 615

STM32浮点运算单元(FPU)和DSP库使用
2024-4-7 13:47
  • ST MCU
  • 30
  • 1054
  解决:根据自己的内核添加即可。这里是M4的。 此时再次编译,就没有报错了。 ...  
  这是因为在arm_math.h中会根据内核类型引用不同的文件。因此这里需要定义内核。 ...  
  此时,在main.c文件中,添加#include “arm_math.h”,然后编译会报错。  
  打开工程可以看到,已经添加好了。  
  勾选上之后,生成工程。  
  勾选上之后点击OK  
  ......  
  CMSIS-DSP 2.1 添加DSP库 两种方法 第一种:直接下载源码,放到工程文件夹,并且添加头文件路径。 第二种: ...  
  最后,勾选上使用单精度硬件浮点运算即可。  
  此时再看。浮点运算就配置好了。  
  解决方法2:把__FPU_PRESENT=1U在这里再添加一次。 注意是1U 不是1,如果写成1,就和stm32f401cx.h中定义的 ...  
  解决方法1(修改文件的方法都不建议):在这个文件中引用 定义有__FPU_PRESENT的文件。如下图。 ...  
  然后再次看就发现,__FPU_PRESENT == 1前面不是已经有了吗,为什么这里还是灰色的。 那是因为在这个文件中 ...  
  如果有的是因为 __CC_ARM 没有定义的话, 那就也添加上去就好了。  
  因此,定义上就可以了。点击魔术棒,添加上如下定义:,__TARGET_FPU_VFP。(注意:是有个逗号和前面分开的 ...  
  ......  
  然后就差 __FPU_USED ==1 了。 打开core_cm4.h,可以看到,默认 __FPU_USED 是为0的。 显然,这里是因为没 ...  
  在stm32f401xc.h中已经对 __FPU_PRESENT == 1 定义过了。  
  在stm32f4xx.h中引用了stm32f401xc.h  
  而在这个文件中引用了头文件:stm32f4xx.h  
2
3