建立MDK工程并添加DSP库
这里我的硬件平台选择STM32F407 软件选择的keil5 串口程序选择的XCOM
这里我选择一个key键点亮LED的例程进行进行改编
1.首先添加文件(DSP的库文件)
2.添加头文件路径
3.添加宏定义:
4.开启FPU
另外根据ARM官方DSP库的要求,还需要设置宏__FPU_PRESENT为1,不过这个宏已经在文件 stm32f4xx.h中设置了(为保险起见,建议把__FPU_PRESENT在第三步的地方也加上,因为部分DSP函数会因为没有这个声明而报错)。
5.添加头文件arm__math.h
6.简易DSP库函数验证
按下按键key 串口打印函数arm_abs_f32的输出结果
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "key.h"
#include "math.h"
#include "arm_math.h"
int main(void)
{
u8 key,t=0;
float32_t pSrc;
float32_t pDst;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
delay_init(168); //初始化延时函数
uart_init(115200); //初始化串口波特率为115200
LED_Init(); //初始化LED
KEY_Init(); //初始化按键
while(1)
{
key=KEY_Scan(0);
if(key==WKUP_PRES)
{
pSrc -= 1.23f;
arm_abs_f32(&pSrc, &pDst, 1);
printf("pDst = %f\r\n", pDst);
}
else delay_ms(10);
t++;
if((t%10)==0)LED1=!LED1;
}
}