【GD32 MCU 入门教程】GD32 MCU FPU 使用方法

发布者:快乐奇迹最新更新时间:2024-10-29 来源: elecfans关键字:GD32  MCU  入门教程  FPU 手机看文章 扫描二维码
随时随地手机看文章

1.Keil 环境下使用 FPU 的方法

GD现有的M4内核MCU 均支持FPU,以下例子以Keil 为环境参考,进行代码修改和设置界面的配置(同理IAR的设置也是类似)。

输入图片说明

1.在选项中找到上述的页面,选择使用use single precision。以下使用的是KEIL5的编译器,其他版本的也是类似。

输入图片说明

2.使用F3系列,需要加入两条语句

在gd32f3xx.h中加入#define __FPU_PRESENT 1

输入图片说明

在system_gd32f30x.c中的SystemInit()中加入

/ FPU settings / //如果库中没有这条语句,就需要加上

#if (__FPU_PRESENT == 1) && (__FPU_USED == 1) SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); /* set CP10 and CP11 Full Access */ #endif

如下图所示

输入图片说明

使用F4系列 在gd32f4xx.h中加入#define __FPU_PRESENT 1

输入图片说明

  1. 打开魔法棒,在 C/C++ 选项卡处添加宏定义 __TARGET_FPU_VFP 使用 FPU 单元。

输入图片说明

4.重新编译下载烧录即可。

5.检查FPU是否打开。

a在jlink调试控制界面下,输入语句

mem32 0XE000ED88 1

具体看下图,得到为00F0 0000的值,证明FPU已经开启。

输入图片说明

b.在GD link的调试下

在进入仿真阶段后,

输入图片说明

点击下方memory ,在address 中输入0XE000ED88

输入图片说明

出现上述圈中的词证明FPU已经打开。

2. Embedded Builder 环境下使用 FPU 的方法

  1. 在gd32f4xx.h中加入#define __FPU_PRESENT 1的宏

输入图片说明

  1. 在工程的 properties 里添加预编译宏 __VFP_FP__

输入图片说明

  1. 选择浮点运算类型及VFP架构

输入图片说明

  1. 在core_cm4.h文件中确认FPU使能

输入图片说明

  1. 在system_gd32f4xx.c中的SystemInit()中加入下述语句。

/ FPU settings / //如果库中没有这条语句,就需要加上

#if (__FPU_PRESENT == 1) && (__FPU_USED == 1) SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); /* set CP10 and CP11 Full Access */ #endif

输入图片说明

  1. 用 Jlink 检查 FPU 是否打开的方法如前文所述,在此便不赘述。


关键字:GD32  MCU  入门教程  FPU 引用地址:【GD32 MCU 入门教程】GD32 MCU FPU 使用方法

上一篇:【GD32 MCU入门教程】GD32 MCU GPIO 结构与使用注意事项
下一篇:不同型号的GD32 MCU如何区分?

小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved