• 資料介紹
    • 前言
    • DWT 介紹
    • 實驗
    • 小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

LAT1256 使用STM32的DWT單元監(jiān)控內(nèi)存

03/25 14:42
553
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

LAT1256 使用STM32的DWT單元監(jiān)控內(nèi)存

380.17 KB

前言

關(guān)于 DWT(Data watchpoint and trace unit),相信有很多工程師都知道,其可用于 us級別的延時。

今天想和大家分享的是,通過 DWT 檢測特定內(nèi)存變量或函數(shù),當(dāng)其被修改或被調(diào)用時時,可以觸發(fā)中斷,通過這樣的方式,實現(xiàn)一些特殊的調(diào)試手段。

DWT 介紹

U5 的 DWT comparator 有以下特性:

1) 用作指令地址匹配或數(shù)據(jù)地址匹配的單一比較器。

2) 在鏈接組中使用相關(guān)的地址范圍匹配或數(shù)據(jù)地址范圍匹配。

實驗

剛好我手中有塊 STM32U575 的 Nucleo 板子,可以拿過來進行功能驗證。

首先我們通過 STM32CubeMX 實現(xiàn)了基本的串口輸出打印的工程,然后在此工程中,按照以下步驟,添加 DWT 的配置 :

1, 使能 tracing 功能;

2, 使能調(diào)試中斷功能;

3, 配置 comparator 寄存器;

4, 配置 function 寄存器

小結(jié)

這是一個非常有意思的實驗,如果是在調(diào)試界面,那么 DebugMon_Handler 的中斷將以斷點的形式呈現(xiàn)。我們在實際應(yīng)用中,可以通過這樣的調(diào)試手段,來分析一些問題

資料預(yù)覽

相關(guān)推薦