一、添加dsp库
MM32F5260搭载 STAR-MC1 (兼容 Cortex-M33)处理器,采用 Arm®v8-M Mainline 架构,内置单精度浮点运算单元(FPU),支持 DSP 扩展,以下介绍如何添加使用ARM官方的dsp函数库
随便打开一个工程,按上图所示勾选dsp选项,即添加dsp库,此时dsp库在工程中已经显示出来
二、打开单精度浮点运算单元(FPU)
接下来开启单精度浮点运算单元(FPU),按下图步骤
三、使用dsp库函数与FPU
在代码中添加头文件,就可以使用arm库中的函数了
#include "arm_math.h"
四、与上位机vofa+通信
首先在官网下载vofa+,打开vofa+,添加波形图
在代码中把printf函数的重定向串口修改,此处参考:[](https://aijishu.com/a/1060000...)修改printf串口重定向
在主函数添加生成正弦波函数y = arm\_sin\_f32(x);这个函数是ARMdsp库中的函数
然后连接硬件,将单片机串口与电脑连接,此时vofa+会出现连接的单片机的串口,按图配置:
连接之后将波形图的x轴y轴修改为相应的参数,此时波形图中出现正弦波,与程序相符合
主函数代码:
#define _MAIN_C_
/* Files include */
#include "platform.h"
#include "gpio_led_toggle.h"
#include "main.h"
#include "arm_math.h"
#include <stdio.h>
int main(void)
{
PLATFORM_Init();
float x =0,y = 0;
while (1)
{
y = arm_sin_f32(x);
printf("%f,%f\n", y,x);
x=x+0.01;
if(x > 300)
{
x=0;
}
}
}