一个典型的开发人员平均花费大约 40% 的时间来调试软件。随着嵌入式开发人员努力应对系统复杂性并试图了解各种软件组件在其系统中的交互方式,这可能会导致成本和上市时间增加。这里介绍几种工具,它们不仅有助于了解软件,还有助于降低成本和上市时间,让我们来看看其中的几个工具:
工具 #1 — 启用跟踪的调试器
无论是 ARM Keil ULINKplus 还是 j-Trace,这些工具都为开发人员提供了访问流跟踪功能和嵌入式目标内存的能力。这些高端调试器可以连接到几种不同的可视化工具,这些工具可以让开发人员深入了解他们的系统是如何运行的。虽然使用这些可视化工具可能并不总是需要高端工具,但它们的次要功能(例如无限断点、备用 GPIO 引脚,甚至能量监控)可能是必不可少的。
工具 #2 – Micrium µC 探针
Micrium 的 µC Probe 可用于嵌入式应用程序中变量和数据的实时可视化。开发人员能够自定义构建最适合他们需要的用户界面,以监控系统的运行情况。µC Probe 几乎可以在调试器能够同时访问微控制器内存的任何嵌入式系统上使用。如果开发人员使用 J-Link 或 j-Trace,此功能使该工具能够以非侵入方式读取内存,几乎没有开销。
工具 #3 – Percepio Tracealyzer
使用 Percepio Tracealyzer 可以跟踪嵌入式应用程序并可视化它的行为方式。Tracealyzer 可以集成到基于 RTOS 的应用程序中,以记录应用程序中发生的事件,例如任务上下文切换、中断、互斥锁和解锁,以及发生的许多其他事件。这些事件可以在代码中围绕特定问题区域以单次方式记录,也可以实时流式传输并查看到主机。跟踪记录后,嵌入式开发人员可以使用 30 多个视图来查看程序执行、任务和事件时间、通信流以及应用程序的许多其他方面。
工具 #4 – SEGGER 系统视图
SEGGER System View 是另一个跟踪可视化工具,可用于查看应用程序在做什么。System View 记录 RTOS 事件并显示一些有用的信息,例如任务时序、任务执行可视化和 CPU 负载。该工具仅包含四个视图,但仍足以获取有关应用程序行为方式的有用信息,这对于免费工具来说非常有用。
工具 #5 – SEGGER Ozone
对于有兴趣确保他们的测试用例在其代码库中获得 100% 覆盖率的嵌入式软件开发人员来说,指令跟踪可能是一个重要的工具。开发人员可以与 J-Trace 结合使用的免费工具是 SEGGERs Ozone。Ozone 让开发人员可以看到他们的代码覆盖率有多好,同时让他们监控函数执行并查看代码中已执行的每条指令。开发人员可以使用此工具从他们的应用程序中收集到许多细节。
结论
如果你看不到系统在做什么,则很难调试和验证软件。如果你能看到正在发生的事情,嵌入式开发人员可以更快地找到解决方案,最终节省时间和金钱。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。