必要的代码准备
程序中开启FPU
打开system_at32f4xx.c文件,找到函数void SystemInit (void),确保内核有开启FPU功能,如图1黑斜体字部分。
注意:程序中开启FPU是必要条件。若仅开启Keil或IAR上的FPU,程序中未开启,则程序运行时会进入hardfault.
图1. 程序中开启FPU
Keil中配置FPU
开启FPU
Options for Target->Target->Floating Point Hardware,选择Use Single Precision
图2. Keil开启FPU
关闭FPU
Options for Target->Target->Floating Point Hardware,选择Not Used
图3. Keil关闭FPU
IAR中配置FPU
开启FPU
Options->General Options->FPU,选择VFPv4 single precision
图4. IAR开启FPU
关闭FPU
Options->General Options->FPU,选择None
图5. IAR关闭FPU
-
mcu
+关注
关注
146文章
17370浏览量
352957 -
函数
+关注
关注
3文章
4350浏览量
63047 -
AT32
+关注
关注
1文章
118浏览量
2202
发布评论请先 登录
相关推荐
使用AT32 MCU实现OTP寄存器功能
AN0002—AT32 MCU如何使用片上Flash来实现EEPROM功能
在AT32系列MCU上Flash模拟EEPRO的应用原理和使用方法
如何在AT32F4xx系列MCU上使用FreeRTOS
其他M3内核MCU的库和AT32 pack造成hardfault怎么办呢
怎么使用AT32 MCU的SPIM作为外部存储器的扩展功能
AT32 MCU USART应用说明
AN0002—AT32 MCU如何使用片上Flash来实现EEPROM功能
![AN0002—<b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>如何使用片<b class='flag-5'>上</b>Flash来实现EEPROM<b class='flag-5'>功能</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
其他M3内核MCU的库和AT32 pack造成hardfault
![其他M3内核<b class='flag-5'>MCU</b>的库和<b class='flag-5'>AT32</b> pack造成hardfault](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
如何在AT32 MCU上使用FPU功能
AT32讲堂017 | 如何在AT32 MCU上使用FPU功能
![<b class='flag-5'>AT32</b>讲堂017 | 如<b class='flag-5'>何在</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b><b class='flag-5'>上</b>使用<b class='flag-5'>FPU</b><b class='flag-5'>功能</b>](https://file.elecfans.com/web2/M00/42/9C/pYYBAGJ5xmyARrXXAAALuRDQWfU330.jpg)
AT32 MCU Develop with VSCode
![<b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b> Develop with VSCode](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
评论