为了添加这个DSP库,并正确使用上,来来回回还是折腾了1个小时的。
下面从0开始添加一下这个DSP库试试。
CSDN上讲了用STM32CubeMX添加的方法,可能针对他当时、以及他使用的STM32芯片是没问题的。
但在现在(2022-04-20)、我使用的STM32F405RGT6芯片上使用问题的。
STM32 DSP库的快速添加 基于cubemx 调用,使用DSP库四臂西瓜的博客-CSDN博客stm32dsp库
因此,下面总结我的方法
目录
步骤1
我们仍然是使用STM32CubeMX来生成项目文件。
其它都不需要注意,唯一要注意的一点的是
生成项目后,我们需要的DSP库已经包含到STM32CubeMX生成的项目文件夹中了
路径: 项目路径/Drivers/CMSIS/DSP
步骤2
打开项目后,需要更改三个位置
1、把arm_cortexM4lf_math.lib包含到项目中
2、添加一个预定义 " ,ARM_MATH_CM4
3、添加包含路径 Include Paths。" 项目路径/Drivers/CMSIS/DSP/Include "
3 测试代码
/* USER CODE END Header */
/* Includes ------------------------------------------------------------------*/
#include "main.h"
#include "gpio.h"
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include "arm_math.h" // 包含一个arm_math.h
/* USER CODE END Includes */
/* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */
float data; // 定义一个全局变量
/* USER CODE END 0 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
data = arm_sin_f32(3.1415926/6); // 用DSP库里面的函数arm_sin_f32计算 sin(Π/6)
}
/* USER CODE END 3 */
测试结果