Keil MDK调试功能,没人喷吧?

关注+星标公众,不错过精彩内容

9d28068af0df8f34b83ca61410c1dc4e.gif

作者 | strongerHuang

微信公众号 | 嵌入式专栏

虽然 Keil 经常被人吐槽,特别是界面还停留在上个世纪(其实IAR也差不多),但它调试功能应该没人喷吧,特别是针对Cortex-M内核单片机的调试功能。

Keil MDK支持的调试功能有很多:组件查看器、事件记录器、事件统计、数据和事件跟踪、指令跟踪等。

3082f6510aece834c56ebb15947aec34.png

有很多网友反应,Keil MDK在调试的时候,会遇到各种问题,下面就简单讲述一下Keil MDK调试时,软件和硬件的一些要求。

1.逻辑分析仪

它要求目标硬件支持 SWO 或 ETM 跟踪。

6a90e26c1ac1618b5fbbe49544dd0338.png

SWO 跟踪或 ETM 跟踪需要在 µVision 调试设置中正确配置:

ae30573e98a79664640d9c64a19b7769.png

2.性能分析器

它要求目标硬件支持 ETM 跟踪。ETM 跟踪需要在 Keil 调试设置中正确配置。

b38b41b2793290b7d5706cda4b5d493b.png

要求:与 Keil一起使用的调试器硬件需要支持流式 ETM 跟踪,例如 ULINKpro。

(有些第三方调试适配器硬件,如之前的 J-Trace Pro,不支持Keil 中的 ETM 流跟踪,换句话说,不能与性能分析器一起使用)

3.代码覆盖率

它与“性能分析器”一样,调试器硬件需要支持流式 ETM 跟踪。“代码覆盖率”对话框提供有关已执行代码的统计信息。将此信息与反汇编窗口中的信息一起使用。

00633b4f4c54cf015eae9bd4bf0a33ba.png

4.系统分析仪

系统分析器主要显示的某些调试信息,例如功耗、测量的内核时钟频率等。

如果要查看其他调试信息,例如 RTX5 事件、线程等,需要正确启用和设置事件记录器。同时,查看调试信息(比如异常),需要启用和设置 SWO 或 ETM 跟踪。

9a6325a63ee03c77fbe71838d5425434.png

5.系统和线程查看器

系统和线程查看器仅支持基于 CMSIS RTOS v1 的旧版 Keil RTXv4.x(仅支持 Keil RTX 4.82 或更早版本)。

9196bdb679c6a7c4062c7260bfaa81ce.png

如果你使用 Keil RTXv4.x 的项目使用 ARM V6.x 编译器工具链编译的,需要遵循“系统和线程查看器”为空。

有关 Keil RTX 5 的类似信息,可以使用“组件查看器”。

6.组件查看器

与上面第5点对应,组件查看器仅支持CMSIS RTOS v2,组件查看器窗口显示的静态信息,帮助分析软件组件的操作。所需的基础架构可以轻松添加到用户应用程序中,并且已经在 MDK-Middleware 和 Keil RTX5 中实现。

556b5780872917de39908cc707ba0fbf.png

本文就先分享到这里,还有更多关于Keil 调试的相关内容,后续为大家分享。

------------ END ------------

9fad648ccc8503d45c1be0a5d6a73971.gif

●专栏《嵌入式工具

●专栏《嵌入式开发》

●专栏《Keil教程》

●嵌入式专栏精选教程

关注公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。

点击“阅读原文”查看更多分享。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值