[牛人杂谈]

Keil的调试器

[复制链接]
733|6
手机看帖
扫描二维码
随时随地手机跟帖
643757107|  楼主 | 2019-7-5 08:48 | 显示全部楼层 |阅读模式
μVision调试器提供了一个单一环境,您可以在其中测试,验证和优化应用程序代码。调试器包括传统功能,如简单和复杂的断点,监视窗口和执行控制,并提供对设备外围设备的完全可见性。
使用ULINK调试适配器访问基于Cortex-M的设备中的Arm CoreSight™单元,μVision调试器提供先进的实时调试,跟踪和分析功能:
  • 组件查看器,事件记录器事件统计信息显示有关应用程序执行的执行状态,事件,时间和电源信息。
  • 数据和事件跟踪输出有关中断和异常的详细信息。它还传递程序事件并启用printf样式的调试消息。
  • 指令跟踪流式传输完整的程序执行以进行记录和分析。








uvision_dbg.png

  • 事件统计信息”窗口显示应用程序代码的执行时间和当前消耗(使用ULINK plus时)。
  • 执行时间在性能分析器中进行了总结,可用于代码语句。



  • 组件查看器”窗口显示软件组件的变量和结构。
  • 事件记录窗口列出捕获软件组件的事件。





使用特权

评论回复
643757107|  楼主 | 2019-7-5 08:50 | 显示全部楼层
组件查看器和事件记录器 cv_er.png

Component ViewerEvent Recorder不需要目标硬件的特殊调试功能。他们使用内存读写来显示以下信息:
  • 静态内存变量或结构中提供的软件组件
  • 由对象句柄寻址的对象。
  • 软件组件的执行状态和事件信息。

事件统计 es.png

事件统计信息”窗口显示有关代码执行的统计数据。任何调试适配器都可用于记录带注释的代码段的执行时间和调用次数。使用ULINK plus可以对带注释的代码段进行能量分析。好处包括:
  • 收集有关代码执行的统计数据(时间和精力)。
  • 日志文件可以在持续集成(CI)环境中进行不同构建运行之间的比较。
  • 提高整体代码质量和能源状况(尤其与电池驱动应用相关)。

数据和事件跟踪

所有基于Cortex-M3 / M4 / M7 / M23 / M33的器件均提供数据和事件跟踪。在系统运行时,MDK提供了多种分析此信息的方法:
  • 跟踪数据窗口 - 通过捕获时间戳,PC样本,异常和内存读/写访问来显示程序流。
  • Debug(printf)Viewer - 显示通过Instrumented Trace Macrocell(ITM),Port 0 顺序传输的数据流。
  • 跟踪例外窗口 - 显示有关程序例外和中断的统计数据。
  • 事件计数器 - 显示提供性能指示的特定事件计数器的实时值。
  • 逻辑分析仪 - 以图形方式显示随时间变化的值。

指令跟踪

许多Cortex-M3 / M4 / M7 / M33器件都集成了嵌入式跟踪宏单元(ETM),可提供指令跟踪。Keil ULINK pro直接将指令跟踪流传输到您的PC,从而可以调试历史序列,执行分析,性能优化和代码覆盖率分析。
代码覆盖率
几乎无限的跟踪信息流使MDK能够为您的程序提供完整的代码覆盖率。代码覆盖率标识已执行的每条指令,确保对您的应用程序进行全面测试。这是完整的软件验证和认证的基本要求。
性能分析器
ULINK pro允许应用程序在收集跟踪信息的同时长时间运行。这是用来通过性能分析器用于功能和程序块记录和显示执行时间。它显示了处理器周期的使用情况,使您能够识别需要优化的算法。
执行分析器已
记录您的应用程序,执行分析器显示完整程序代码的计时和执行统计信息。


使用特权

评论回复
643757107|  楼主 | 2019-7-5 09:23 | 显示全部楼层
掌握RTOS调试技术 在开发实时嵌入式系统时,使用RTOS几乎已成为必需。问题是许多开发人员刚刚开始使用RTOS,并且不熟悉快速有效地调试基于RTOS的应用程序代码所需的方法和技术。例如正确调整线程堆栈大小,使用事件查看器以及发现优先级倒置,死锁和线程饥饿等问题。

使用特权

评论回复
yiy| | 2019-7-7 17:29 | 显示全部楼层
多谢分享教程。

使用特权

评论回复
yiy| | 2019-7-7 17:29 | 显示全部楼层
原来调试可以这么丰富。

使用特权

评论回复
xuanhuanzi| | 2019-7-7 23:10 | 显示全部楼层
这软件越来越不好用了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

199

主题

3697

帖子

11

粉丝