FPU开启和DSP库导入(STM)


FPU

FPU(Float Point Unit):浮点运算单元

开启FPU方法:
把两个宏(__FPU_PRESENT、__FPU_USED)配置为1即可开启

开启FPU的函数,stm32项目启动文件里面自带,不需要自己写
void SystemInit(void) 
{ 
	 #if (__FPU_PRESENT == 1) && (__FPU_USED == 1) 
 		SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); 
}

宏定义标识符解释:
__FPU_PRESENT : 用来确定处理器是否带 FPU功能
__FPU_USED : 用来确定是否开启FPU功能。

Ps : “stm32fxxx.h"不同芯片不同名称,例如F407则为"stm32f4xx.h”
__FPU_PRESENT放在了"stm32fxxx.h"头文件里面进行宏定义
该宏定义为1,则该芯片有FPU功能
在keil的 Floating Point Hardware 设置为使用,相当于添加一句话 : #define __FPU_USED 1
这样即可开启FPU
在这里插入图片描述

CMSIS-DSP库

STM32cubeMX生成的项目

cubeMX生成的项目自带了DSP库,在 “\Drivers\CMSIS” 里面即可看到一个名叫"DSP"的目录,但是都是源码,不方便移植,所以移植的程序是 "*.lib"文件

1、在keil里面加入DSP头文件目录
在这里插入图片描述

2、加入 DSP的lib文件,文件放在\Drivers\CMSIS\Lib\ARM
在这里插入图片描述

3、加入宏定义
在这里插入图片描述

宏定义:
ARM_MATH_CM4


  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32F4 DSP是一种用于在STM32F4系列微控制器上进行数字信号处理的。它提供了一系列的函数和算法,用于实现基本的数学运算、滤波、FFT、向量操作等。\[1\] 要在STM32F4上使用DSP,需要进行一些环境配置。首先,在CUBEMX中生成工程时,需要勾选生成工程时添加所有。然后,在Keil中进行宏定义,包括__FPU_PRESENT=1、__TARGET_FPU_VFP、ARM_MATH_CM4和__CC_ARM。接下来,在Keil中添加DSP的位置,即../Drivers/CMSIS/DSP/Include。然后,将lib文件的lf后缀添加到工程的core文件夹下。最后,在使用函数时,需要包含头文件arm_math.h,并编译工程。\[2\] 通过以上配置和使用,您可以在STM32F4上使用DSP来实现各种数字信号处理的功能。 #### 引用[.reference_title] - *1* [stm32F407-------DSP学习](https://blog.csdn.net/qq_53889131/article/details/125983021)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [STM32F4的DSP](https://blog.csdn.net/weixin_44229819/article/details/124160520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值