STML4导入arm-DSP库进行RFFT计算

该文部分转自STM32CubeIDE下使能STM32F4的FPU同时调用DSP库计算正弦函数

背景

使用STM32L4系列MCU实现对交流信号的采集和计算(幅值、相位等)。看到论坛有人使用arm-DSP库函数效率很高,特写此文,将配置过程写出来。

1环境

Windows 10 + STM32cubeIDE1.3.0 + STM32Cube_FW_L4_V1.15.1 + 开发板

2 cubeIDE生成驱动

具体配置根据每个人不同需求自行配置,此处不再赘述,重点描述关于arm-DSP库加载和导入STML4导入arm-DSP库进行RFFT计算_第1张图片

3、arm-DSP库配置和导入

3.1lib库导入

路径如下:Repository\STM32Cube_FW_L4_V1.15.1\Drivers\CMSIS\Lib\ARM
STML4导入arm-DSP库进行RFFT计算_第2张图片
直接拖拽至工程.ioc同级目录即可
STML4导入arm-DSP库进行RFFT计算_第3张图片

3.2 头文件

路径:Repository\STM32Cube_FW_L4_V1.15.1\Drivers\CMSIS\DSP\Include
STML4导入arm-DSP库进行RFFT计算_第4张图片
直接拖拽至工程include目录下即可
STML4导入arm-DSP库进行RFFT计算_第5张图片

3.3 源文件

路径:Repository\STM32Cube_FW_L4_V1.15.1\Drivers\CMSIS\DSP\Source
STML4导入arm-DSP库进行RFFT计算_第6张图片
直接拖拽至工程src目录下即可
STML4导入arm-DSP库进行RFFT计算_第7张图片

4、IDE配置

进入工程属性设置
STML4导入arm-DSP库进行RFFT计算_第8张图片
按照下图增加4个宏定义:

__FPU_PRESENT,且数值1
__FPU_USED,且数值1
__TARGET_FPU_VFP
ARM_MATH_CM4

STML4导入arm-DSP库进行RFFT计算_第9张图片
头文件单纯拖拽至工程,编译会报错,需要手动添加头文件目录
STML4导入arm-DSP库进行RFFT计算_第10张图片

5、使用库函数

5.1声明头文件

在需要使用库函数计算的文件头部声明
#include “math.h”
#include “arm_math.h”

5.2计算幅值

利用arm-DSP库进行FFT计算,获得信号的频谱、幅值及相位(下)

你可能感兴趣的:(STML4导入arm-DSP库进行RFFT计算)