STM32F103,DSP库移植笔记,希望后来人能少踩些坑
版本介绍:
- Keil_V5.33(此keil版本内置CMSIS版本为5.7,DSP版本为1.8)
- Keil pack包STM32F1xx_DFP.2.3.0
移植步骤
1. 拷贝 CMSIS下文件到工程目录
-
在待移植的工程目录下新建DSPlib文件夹,用以存放DSB相关文件  -
在keil安装目录下找到CMSIS文件夹,进入内部,找到CMSIS\DSP下的include文件夹,将其拷贝到上一步DSPlib文件夹  -
同时,进入CMSIS\DSP\LIB\ARM文件夹下找到arm_cortexM3l_math.lib文件,拷贝到DSPlib文件夹  -
拷贝完效果如图 
2. Keil软件的options for target中添加文件路径和关键字ARM_MATH_CM3
 

3. 包含头文件:#include "math.h" 和#include "arm_math.h" 编译一下工程,根据报错添加头文件
添加#include "math.h" 和```#include “arm_math.h”``到工程 
编译一下工程,会报错缺少XXX.h,缺失的头文件可在keil安装目录下的CMSIS\Core\Include文件夹下找到,将其复制到之前创建的DSPlib\include文件夹下,完善DSPlib。其中,core_cm3.h文件要加入到DSPlib,如果之前工程有,则替换掉旧的。

4. 编译没有错误后,选中DSP库
按照下图选中BSP库,并将source改为library  
5. 测试
添加以下代码到工程
float EcgDiscrList[28];
float stdResultDiffECG;
arm_std_f32(EcgDiscrList,28-4,&stdResultDiffECG);

编译没问题则移植成功。
|