日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32 进阶教程 12 - M4的硬件乘法器使用

發布時間:2025/4/5 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32 进阶教程 12 - M4的硬件乘法器使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

??? Cortex-M4支持硬件浮點運算單元(有些廠商直接說成DSP模塊),本節將給大家介紹STM32F407芯片中硬件浮點運算單元中的使用及帶來的性能對比。

示例詳解

基于硬件平臺: 正點源子的stm32f4 探索者開發板,MCU 的型號是?STM32F4ZET6, 使用stm32cubemx 工具自動產生的配置工程,使用KEIL5編譯代碼。本示例所用的開發板及部分原理圖:

?

  • 關于CUBEMX工具及KEIL工具的操作將不再細講,如果還有不熟悉的可以查看之前的教程文檔。下面直接介紹工程配置:
  • ?

  • 系統時鐘樹
  • ?

  • 串口配置(用于程序調試)
  • ?

  • RCC配置
  • SYS配置
  • 引腳配置,用到引腳極少
  • 堆棧配置(也可保持默認):
  • ?

  • 工程代碼
  • 在main.c 中main函數中 USER CODE 1、USER CODE 2以及 main.c中的 USER CODE 4 區域加入如下圖所示代碼:
  • ?

    ?

    ?

    c) 編譯工程,調試程序, (注:在使用探索者F4調試時,下載或仿真調試時先不要PC串口工具連接上開發板的USB_232接口,有可能導致程序運行不了--boot0引腳電平不對,可以先跑起來再在PC串口工具上連接相應端口!!,可按下面的具體操作步驟來操作—>>? )。

    ?

    在KEIL mdk v5中對stm32f407的硬件浮點單元默認是開啟的(選擇是單精度模式—Single Precision )如下圖:

    ?

    程序跳轉到main函數開始位置:

    打開串口工具,并打開相應串口:

    串口已打開,程序全速運行(F5或單擊全速運行圖標)相看運行結果:

    ?

    接下來我們不使用硬件浮點運算單元,如下圖選擇不使用,

    編譯,如果出現如下類似錯誤:

    只需在float 變量初始化值后加上f后輟即可:

    ?

    成功編譯通過后按上面的步驟再來運行一次程序,這個時候可以在串口中看到如下程序運行結果—不使用硬件浮點運算單元,浮點數的運算時間明顯加長:

    ?

    到此本節課就算完成了,相信大家對Cortex-M4的硬件浮點運算單元也會有更加深的了解與認識。

    ?

    OK,本期實驗完成!下期見!同時如果大家有什么疑問或是有想了解的其它內容,也歡迎大家留言!!最后喜歡這個公眾號的同學們記得加關注了,會有不定期技術干貨推出!!

    ?

    文中源碼資料下載,在公眾號里給十三發消息:

    下載|STM32進階教程12

    ?

    關注十三公眾號

    ?

    總結

    以上是生活随笔為你收集整理的STM32 进阶教程 12 - M4的硬件乘法器使用的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。