只要STM32或者其他32位單片機,自帶FPU功能,就可以加速float類型數(shù)據(jù)的加減乘除運算。
在STM32中要啟用FPU,需要啟動滿足兩個宏:(__FPU_PRESENT == 1) && (__FPU_USED == 1)
在keil的魔術(shù)棒中,如上圖所示,直接選中單精度浮點運算器,keil就會自動把所需的宏給定義出來。如何驗證是否開啟成功?
. z. ~/ |* ~1 ?
驗證方法1:
運行單片機程序,不選中/選中FPU,分別做10萬次乘法:發(fā)現(xiàn)耗時不同,則說明開啟FPU成功了。
# x& g8 C/ p# Y: ~e: K4 T
驗證方法2:; U. o+ ~/ h6 _6 r+ O
進入debug模式,或者直接查看匯編文件,發(fā)現(xiàn)C語言乘法運算,被編譯成了V打頭的匯編乘法命令,說明開啟成功。/ e2 J: V# P9 k" |+ c" f% P
FPU只能加速float的基本運算,還有一些數(shù)學函數(shù),不是光靠FPU就能加速的,例如sin、cos、等函數(shù),ARM,ST,GD,APM等廠商提供了優(yōu)化過的三角函數(shù)等,建議直接使用。
-
單片機
+關(guān)注
關(guān)注
6067文章
44982瀏覽量
650310 -
FPU
+關(guān)注
關(guān)注
0文章
45瀏覽量
22051 -
運算效率
+關(guān)注
關(guān)注
0文章
2瀏覽量
5431
發(fā)布評論請先 登錄
如何提高位運算效率
學51單片機之單片機基礎(chǔ)知識
單片機教程十一:單片機算術(shù)運算指令、單片機邏輯運算類指令
IC解密之單片機算術(shù)運算指令
單片機學習入門之單片機基礎(chǔ)知識詳細資料概述

提高單片機編程效率的基本小技巧
51單片機之簡介

《電子DIY》之《單片機實踐項目》之基于單片機的三路搶答器設(shè)計與制作

《電子DIY》之《單片機實踐項目》之基于單片機的簡易數(shù)字秒表的設(shè)計(Proteus仿真與實物制作)

《電子DIY》之《單片機實踐項目》之基于單片機的電子時鐘設(shè)計與制作(基于單片機的萬年歷的設(shè)計與制作)

評論