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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Arm?v7-M 架構的 STM32 如何啟用 DWT進行計數(shù)

STM32單片機 ? 來源:未知 ? 2023-10-27 19:45 ? 次閱讀

關鍵詞:DWT, DEMCR

目錄預覽

1、前言

2、調研

3、啟用 DWT 進行計數(shù)

4、小結

01

前言

客戶在使用 STM32H7 的時候,想要使用 DWT 計數(shù)來測量代碼執(zhí)行時間,評估執(zhí)行效率??蛻舭l(fā)現(xiàn)在重新上電或 reset 后,無法啟用 DWT 進行計數(shù)。

02

調研

ARMv7-M 架構中有個 DEMCR 寄存器,這個寄存器可以控制 DWT 的使能。在power-on reset 后這個寄存器所有位的值都為 0。而當 bit[24]為 0 時,DWT 和 ITM 模塊都是 disabled 的。所以為了啟用 DWT 模塊,必須將 DEMCR 的 bit[24]置為 1。如圖 1 所示:

wKgaomU7o-uAFvEBAAMON4eEeOw782.png

圖1.DEMCR 寄存器

03

啟用 DWT 進行計數(shù)

STM32H7 基于 Arm Cortex-M7 內核,而 Cortex-M7 是 ARMv7-M 架構,所以 H7 在配置 DWT 模塊之前需要將 DEMCR 的 bit[24]置位。在基于 Cortex-M7 的芯片中,需要使用DWT-LAR 來解鎖 DWT(其他核可能不需要,應具體分析),然后對 DWT_CTRL 進行相應使能即可。

在 CMSIS 文件中已經(jīng)提供了相關寄存器的宏定義(例如在“core_cm7.h”文件中包提供了 DWT 和 DEMCR 的宏定義),我們可以使用這些宏定義方便的進行配置,如圖 2所示:

wKgaomU7o-yAHAtFAAQ0_D3Xvx4077.png

圖2.core_cm7.h 文件

示例(如下):使用 DWT 測量代碼執(zhí)行所用的時鐘 cycle 數(shù)。

wKgaomU7o-yAFfp-AADGznw4wco909.pngwKgaomU7o-yAJmavAAAR-B25Ao0705.png

04

小結

在使用 ARMv7-M 架構的 STM32 時,對 DWT 配置之前應確保 DEMCR 中的 bit[24]已經(jīng)被配置(使能 DWT),然后才能使用 DWT。

更多內容,歡迎點擊下方“閱讀原文”,下載完整文檔。

wKgaomU7o-yAbeqbAAHiBpzEGaQ583.png

完整內容請點擊“閱讀原文”下載原文檔。


原文標題:Arm?v7-M 架構的 STM32 如何啟用 DWT進行計數(shù)

文章出處:【微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。


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

    關注

    6023

    文章

    44376

    瀏覽量

    628385
  • STM32
    +關注

    關注

    2258

    文章

    10828

    瀏覽量

    352484

原文標題:Arm?v7-M 架構的 STM32 如何啟用 DWT進行計數(shù)

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于高通主板的ARM架構服務器

    一、ARM架構服務器的崛起 (一)市場需求推動 消費市場寒冬,全球消費電子需求下行,服務器成半導體核心動力之一。Arm 加速布局服務器領域,如 9 月推出 Neoverse V2。長久
    的頭像 發(fā)表于 09-11 10:53 ?232次閱讀

    ISA ARM 對比 RISC-V

    、擴展方式以及目標應用場景等方面有顯著差異。 要深入對比ARM和RISC-V的指令集,需要從指令集架構(ISA)的設計原則、擴展模塊、指令的復雜性、特性以及它們的實際性能表現(xiàn)來進行討論
    的頭像 發(fā)表于 09-10 09:26 ?100次閱讀

    請問STM32G071如何通過DWT實現(xiàn)us精準定時?

    STM32G071怎樣通過DWT實現(xiàn)us精準定時?,各位大佬有實現(xiàn)的嗎?
    發(fā)表于 03-20 06:59

    蘋果M3芯片是ARM架構

    蘋果M3芯片采用的是ARM架構。這種架構具有高效能和低功耗的特點,使得M3芯片在提供出色性能的同時,也能保持較低的能耗。
    的頭像 發(fā)表于 03-08 16:03 ?1497次閱讀

    揭秘單片機調試利器值之DWT跟蹤組件

    DWT 中有剩余的計數(shù)器,它們典型地用于程序代碼的“性能速寫”(profiling)。通過編程它們,就可以讓它們在計數(shù)器溢出時發(fā)出事件(以跟蹤數(shù)據(jù)包的形式)。
    發(fā)表于 02-28 13:55 ?534次閱讀
    揭秘單片機調試利器值之<b class='flag-5'>DWT</b>跟蹤組件

    ARM系列STM32F103芯片的解密方法

    本文介紹ARM系列STM32F103芯片的解密方法,其內核是Cortex-M3,內存從16K-512K都有。
    發(fā)表于 02-28 11:20 ?1263次閱讀

    Arm v9芯片新架構揭秘

    從中長期來看,隨著單芯片 ARM 核數(shù)增加、基于 ARM 架構芯片數(shù)量的上升以及ARM 應用場景的增加,公司仍將保持增長。據(jù)公司公告數(shù)據(jù)顯示,2023 財年,高端芯片采用
    發(fā)表于 02-27 14:14 ?5016次閱讀
    <b class='flag-5'>Arm</b> <b class='flag-5'>v</b>9芯片新<b class='flag-5'>架構</b>揭秘

    arm架構和x86架構區(qū)別 linux是x86還是arm

    ARM架構和x86架構是兩種不同的計算機處理器架構,它們在體系結構、指令集、應用領域等方面有著明顯的區(qū)別。Linux操作系統(tǒng)則具有廣泛的適配性,可以運行在各種
    的頭像 發(fā)表于 01-30 13:46 ?1.4w次閱讀

    M467可以對QEI的計數(shù)進行清零嗎?

    請問M467可以對QEI的計數(shù)進行清零嗎? EQEI_GET_CNT_VALUE(EQEI0) 例如 對于這個獲取到的數(shù)據(jù)。
    發(fā)表于 01-16 06:56

    STM32簡介 STM32ARM7的關系

    STM32是“意法半導體”生產的基于“ARM公司Cortex-M3內核”的32位高性能MCU。
    的頭像 發(fā)表于 01-03 13:38 ?1491次閱讀
    <b class='flag-5'>STM32</b>簡介 <b class='flag-5'>STM32</b>和<b class='flag-5'>ARM7</b>的關系

    GD32H737xx系列Arm Cortex-M7 MCU數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《GD32H737xx系列Arm Cortex-M7 MCU數(shù)據(jù)手冊.pdf》資料免費下載
    發(fā)表于 01-03 10:42 ?4次下載
    GD32H737xx系列<b class='flag-5'>Arm</b> Cortex-<b class='flag-5'>M7</b> MCU數(shù)據(jù)手冊

    Arm Cortex-M52的主要特性和規(guī)格

    Arm Cortex-M52是一款采Arm Helium 技術的新型微控制器內核,旨在將AI功能引入更小、成本更低的物聯(lián)網(wǎng)設備,而不是基于Arm Cortex-
    的頭像 發(fā)表于 01-02 11:12 ?1104次閱讀
    <b class='flag-5'>Arm</b> Cortex-<b class='flag-5'>M</b>52的主要特性和規(guī)格

    ARM處理器Trusted Firmware-M架構

    取得ARM PSA certification認證的參考資源。 Trusted Firmware包含了幾個項目,這篇文章是以其中的Trusted Firmware-MArm v7-M
    的頭像 發(fā)表于 11-02 16:06 ?651次閱讀
    <b class='flag-5'>ARM</b>處理器Trusted Firmware-<b class='flag-5'>M</b><b class='flag-5'>架構</b>

    RISC-V開源架構ARM架構什么區(qū)別?

    很多公司覺得ARM收費太高,決定一起搞RISC-V架構,是不是這種開源的是不是不收費的;那和ARM有啥區(qū)別,能發(fā)展起來嗎
    發(fā)表于 10-30 06:38

    RISC-V特權架構和通用寄存器

    RISC-V特權架構 ARM7種工作模式,而RISC-V也有不同的模式,這些模式在RISC-V
    的頭像 發(fā)表于 10-08 14:48 ?1205次閱讀
    RISC-<b class='flag-5'>V</b>特權<b class='flag-5'>架構</b>和通用寄存器