1)实验平台:正点原子MiniPro H750开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=677017430560 3)全套实验源码+手册+视频下载地址:http://www.openedv.com/thread-336836-1-1.html 4)对正点原子STM32感兴趣的同学可以加群讨论:879133275
第五十二章 FPU测试(Julia分形)实验本章我们将学习如何开启STM32H750的硬件FPU,并对比使用硬件FPU和不使用硬件FPU的速度差别,以体现硬件FPU的优势。 本章分为如下几个小节: 52.1 FPU&Julia分形简介 52.2 硬件设计 52.3 程序设计 52.4 下载验证
52.1 FPU&Julia分形简介 本节将分别介绍STM32H750的FPU和Julia分形。 52.1.1 FPU简介 FPU即浮点运算单元(Float Point Unit)。浮点运算,对于定点CPU(没有FPU的CPU)来说必须要按照IEEE-754标准的算法来完成运算,是相当耗费时间的。而对于有FPU的CPU来说,浮点运算则只是几条指令的事情,速度相当快。 STM32H750属于Cortex M7架构,带有32位双精度硬件FPU,支持浮点指令集,相对于Cortex M0和Cortex M3等,高出数十倍甚至上百倍的运算性能。 STM32H750硬件上要开启FPU是很简单的,通过一个叫:协处理器控制寄存器(CPACR)的寄存器设置即可开启STM32H750的硬件FPU,该寄存器各位描述如图52.1.1.1所示:
图 52.1.1.1 协处理器控制寄存器(CPACR)各位描述 这里我们就是要设置CP11和CP10这4个位,复位后,这4个位的值都为0,此时禁止访问协处理器(禁止了硬件FPU),我们将这4个位都设置为1,即可完全访问协处理器(开启硬件FPU),此时便可以使用STM32H750内置的硬件FPU了。CPACR寄存器这4个位的设置,我们在system_stm32h7xx_c文件里面开启,代码如下:
void SystemInit (void)
{
/* 省略部分代码 */
/* FPU settings ------------------------------------------------------------*/
#if (__FPU_PRESENT == 1) && (__FPU_USED == 1)
SCB->CPACR |= ((3UL
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?