【 STM32H5 】STM32CUBEIDE直接添加DSP库
文章目录
前言
我在给H563添加DSP库的时候,发现网上很少有直接通过软件添加的方法,当然也可能是我没查到,这里留作记录,也能给和我碰到一样问题的人一些参考。
准备
硬件:NUCLEO-H563
软件:STM32CUBEIDE_1.16.0
MCU=STM32H563ZIT6
Ram=640K
Flash=2M
Freq=250M
实现
- 打开工程配置界面,点击上方的【software packs】,找到【manage software packs】
- 点击中间的【STMicroelectronics】,朝下找到【X-CUBE-ALGOBUILD】
安装1.4.0这个包(笔者有尝试使用1.3.0的包,但是生成的代码在middleware那里没有DSP的库,只有arm_math头文件,所以还是不要用1.3.0了),1.4.0这个包有个感叹号是要安装下面的MEME1包,最好装一下
- 安装完成后回到我们的配置界面,选择【select components】,找到我们刚才下载的包,在里面找到DSP库
- 回到配置界面,选到DSP库,生成代码
- 代码加入头文件,使用函数进行测试
#include "arm_math.h"
float32_t r_temp=3.14/6;
float32_t r_temp2=0;
r_temp2 = arm_sin_f32(r_temp);
printf("SIN(PI/6)=%f\r\n",r_temp2);
现象
后记
这里我们回来看一眼添加的文件
可以看到是ARMV8内核的库文件,可是STM32H5我记得是CM33内核的,这点笔者也感到很困惑。
另外,不止是DSP,包括FreeRTOS的移植文件,STM32H563用的也是ARMV8的文件。
笔者之前看middleware配置里面找不到FreeRTOS,只看到THREADX,以为无法生成FreeRTOS工程。后面在网上看看,使用CM3内核的文件(GCC)勉强驱动了起来,忽然心有所感,在库里面搜FreeRTOS,找到了配置方法。
配置完成后看到还是ARMV8的文件,这很难想到。(苦笑)
这次DSP库的添加的过程还有一点曲折,表现为配置界面的【Middlewares。。。】找不到下载的包。
这部分我会另写一篇,感觉是笔者在CUBEIDE里把C盘的cube库路径迁移导致的。作者:厉水涵