0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何提高單片機(jī)的運(yùn)算效率之FPU

撞上電子 ? 2024-08-30 11:47 ? 次閱讀

只要STM32或者其他32位單片機(jī),自帶FPU功能,就可以加速float類型數(shù)據(jù)的加減乘除運(yùn)算。

在STM32中要啟用FPU,需要啟動(dòng)滿足兩個(gè)宏:(__FPU_PRESENT == 1) && (__FPU_USED == 1)

8bcf800e-6682-11ef-89ff-92fbcf53809c.png

8be72178-6682-11ef-89ff-92fbcf53809c.png

keil的魔術(shù)棒中,如上圖所示,直接選中單精度浮點(diǎn)運(yùn)算器,keil就會(huì)自動(dòng)把所需的宏給定義出來。如何驗(yàn)證是否開啟成功?
. z. ~/ |* ~1 ?
驗(yàn)證方法1:
運(yùn)行單片機(jī)程序,不選中/選中FPU,分別做10萬次乘法:發(fā)現(xiàn)耗時(shí)不同,則說明開啟FPU成功了。
# x& g8 C/ p# Y: ~e: K4 T
驗(yàn)證方法2:; U. o+ ~/ h6 _6 r+ O
進(jìn)入debug模式,或者直接查看匯編文件,發(fā)現(xiàn)C語言乘法運(yùn)算,被編譯成了V打頭的匯編乘法命令,說明開啟成功。/ e2 J: V# P9 k" |+ c" f% P

8bf98cdc-6682-11ef-89ff-92fbcf53809c.png

FPU只能加速float的基本運(yùn)算,還有一些數(shù)學(xué)函數(shù),不是光靠FPU就能加速的,例如sin、cos、等函數(shù),ARM,ST,GD,APM等廠商提供了優(yōu)化過的三角函數(shù)等,建議直接使用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6050

    文章

    44703

    瀏覽量

    641299
  • FPU
    FPU
    +關(guān)注

    關(guān)注

    0

    文章

    42

    瀏覽量

    21469
  • 運(yùn)算效率
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    5385
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何提高運(yùn)算效率

    運(yùn)算加速技巧本方法可以讓c語言指令進(jìn)一步接近匯編指令的執(zhí)行效率,提高單片機(jī),嵌入式系統(tǒng)的速度和穩(wěn)定性,但編程時(shí)應(yīng)采取函數(shù)化的編程法——例如使用swap()函數(shù)時(shí),必要時(shí)加注釋。注:本
    發(fā)表于 12-09 08:21

    單片機(jī)提高篇)

    單片機(jī)提高篇)
    發(fā)表于 03-21 20:52 ?124次下載

    學(xué)51單片機(jī)單片機(jī)基礎(chǔ)知識(shí)

    帶您從零學(xué)51單片機(jī)單片機(jī)基礎(chǔ)知識(shí) 目錄1 什么是單片機(jī)2 單片機(jī)能做什么3 為什么要學(xué)單片機(jī)
    發(fā)表于 02-10 14:33 ?158次下載

    單片機(jī)PPT篇

    單片機(jī)PPT篇 單片機(jī)特點(diǎn)及其發(fā)展概況•單片機(jī)區(qū)別于微處理器•單片機(jī)的廣泛應(yīng)用
    發(fā)表于 04-09 14:04 ?70次下載

    單片機(jī)教程十一:單片機(jī)算術(shù)運(yùn)算指令、單片機(jī)邏輯運(yùn)算類指令

    單片機(jī)教程十一:單片機(jī)算術(shù)運(yùn)算指令 不帶進(jìn)位位的單片機(jī)加法指令 ADD A,#DATA ;例:ADD A,#10H ADD A,direct ;例:ADD A,10H ADD
    發(fā)表于 05-15 23:06 ?3214次閱讀

    IC解密單片機(jī)算術(shù)運(yùn)算指令

    單片機(jī)算術(shù)運(yùn)算指令匯總,不帶進(jìn)位位的單片機(jī)加法指令,由于51單片機(jī)是一種8位機(jī),所以只能做8位的數(shù)**算,但8位
    發(fā)表于 11-29 11:55 ?1336次閱讀

    單片機(jī)密碼鎖

    STC80C51--單片機(jī)密碼鎖源程序。
    發(fā)表于 09-01 15:44 ?37次下載

    單片機(jī)實(shí)驗(yàn)提高源程序

    單片機(jī)實(shí)驗(yàn)提高源程序
    發(fā)表于 03-19 19:49 ?10次下載

    單片機(jī)學(xué)習(xí)入門單片機(jī)基礎(chǔ)知識(shí)詳細(xì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)學(xué)習(xí)入門單片機(jī)基礎(chǔ)知識(shí)詳細(xì)資料概述主要內(nèi)容包括了:1 MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)2 構(gòu)建單片機(jī)最小系統(tǒng)3
    發(fā)表于 10-24 11:50 ?77次下載
    <b class='flag-5'>單片機(jī)</b>學(xué)習(xí)入門<b class='flag-5'>之</b><b class='flag-5'>單片機(jī)</b>基礎(chǔ)知識(shí)詳細(xì)資料概述

    提高單片機(jī)編程效率的基本小技巧

    就掌握的。 新手的難路虎還有開發(fā)環(huán)境,相對(duì)于純C的編程,單片機(jī)的開發(fā)環(huán)境還要配置參數(shù),設(shè)定各種選項(xiàng)什么的,另外還會(huì)碰到各種語言上不好理解的錯(cuò)誤,這個(gè)也是慢慢來吧。 當(dāng)然當(dāng)上述兩個(gè)基礎(chǔ)打通了以后,再想提高主要就是靠語言
    的頭像 發(fā)表于 03-12 16:43 ?2956次閱讀

    51單片機(jī)簡(jiǎn)介

    51單片機(jī)簡(jiǎn)介前提:學(xué)習(xí)單片機(jī)前需要了解的知識(shí)模擬電子技術(shù)???※※※※數(shù)字電子技術(shù)???※※※※※C語言基礎(chǔ) ????※※※※※如何學(xué)好單片機(jī)加強(qiáng)
    發(fā)表于 11-05 10:50 ?11次下載
    51<b class='flag-5'>單片機(jī)</b><b class='flag-5'>之</b>簡(jiǎn)介

    《電子DIY》單片機(jī)實(shí)踐項(xiàng)目》基于單片機(jī)的三路搶答器設(shè)計(jì)與制作

    《電子DIY》單片機(jī)實(shí)踐項(xiàng)目》基于單片機(jī)的三路搶答器設(shè)計(jì)與制作添加鏈接描述
    發(fā)表于 11-05 11:21 ?22次下載
    《電子DIY》<b class='flag-5'>之</b>《<b class='flag-5'>單片機(jī)</b>實(shí)踐項(xiàng)目》<b class='flag-5'>之</b>基于<b class='flag-5'>單片機(jī)</b>的三路搶答器設(shè)計(jì)與制作

    《電子DIY》單片機(jī)實(shí)踐項(xiàng)目》基于單片機(jī)的簡(jiǎn)易數(shù)字秒表的設(shè)計(jì)(Proteus仿真與實(shí)物制作)

    單片機(jī)實(shí)踐項(xiàng)目》基于單片機(jī)的簡(jiǎn)易數(shù)字秒表的設(shè)計(jì)(八十二)鏈接:添加鏈接描述
    發(fā)表于 11-12 20:21 ?20次下載
    《電子DIY》<b class='flag-5'>之</b>《<b class='flag-5'>單片機(jī)</b>實(shí)踐項(xiàng)目》<b class='flag-5'>之</b>基于<b class='flag-5'>單片機(jī)</b>的簡(jiǎn)易數(shù)字秒表的設(shè)計(jì)(Proteus仿真與實(shí)物制作)

    單片機(jī)認(rèn)識(shí)單片機(jī)

    單片機(jī)認(rèn)識(shí)單片機(jī)1、什么是單片機(jī)?單片機(jī)就是一塊集成芯片,專業(yè)語言講單片機(jī)就是在一塊硅片上集成
    發(fā)表于 11-14 17:06 ?7次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>之</b>認(rèn)識(shí)<b class='flag-5'>單片機(jī)</b>

    《電子DIY》單片機(jī)實(shí)踐項(xiàng)目》基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)與制作(基于單片機(jī)的萬年歷的設(shè)計(jì)與制作)

    《電子DIY》單片機(jī)實(shí)踐項(xiàng)目》基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)與制作(基于單片機(jī)的萬年歷的設(shè)計(jì)與制作)添加鏈接描述
    發(fā)表于 01-18 09:47 ?18次下載
    《電子DIY》<b class='flag-5'>之</b>《<b class='flag-5'>單片機(jī)</b>實(shí)踐項(xiàng)目》<b class='flag-5'>之</b>基于<b class='flag-5'>單片機(jī)</b>的電子時(shí)鐘設(shè)計(jì)與制作(基于<b class='flag-5'>單片機(jī)</b>的萬年歷的設(shè)計(jì)與制作)