• 资料介绍
    • 前言
    • DWT 介绍
    • 实验
    • 小结
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

LAT1256 使用STM32的DWT单元监控内存

03/25 14:42
295
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LAT1256 使用STM32的DWT单元监控内存

380.17 KB

前言

关于 DWT(Data watchpoint and trace unit),相信有很多工程师都知道,其可用于 us级别的延时。

今天想和大家分享的是,通过 DWT 检测特定内存变量或函数,当其被修改或被调用时时,可以触发中断,通过这样的方式,实现一些特殊的调试手段。

DWT 介绍

U5 的 DWT comparator 有以下特性:

1) 用作指令地址匹配或数据地址匹配的单一比较器

2) 在链接组中使用相关的地址范围匹配或数据地址范围匹配。

实验

刚好我手中有块 STM32U575 的 Nucleo 板子,可以拿过来进行功能验证。

首先我们通过 STM32CubeMX 实现了基本的串口输出打印的工程,然后在此工程中,按照以下步骤,添加 DWT 的配置 :

1, 使能 tracing 功能;

2, 使能调试中断功能;

3, 配置 comparator 寄存器

4, 配置 function 寄存器

小结

这是一个非常有意思的实验,如果是在调试界面,那么 DebugMon_Handler 的中断将以断点的形式呈现。我们在实际应用中,可以通过这样的调试手段,来分析一些问题

资料预览

点赞
收藏
评论
分享
加入交流群
举报

相关推荐

方案定制

去合作
方案开发定制化,2000+方案商即时响应!