0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式系统分析工具

lPCU_elecfans 来源:未知 作者:李倩 2018-05-30 09:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

能否及时高效地构建嵌入式系统,取决于软件开发人员在工作台上是否有合适工具来帮助完成开发工作。虽然预算通常受到限制,但有些工具是每位嵌入式软件工程师都必需的,这些工具可以帮助他们大幅减少构建、调试和验证其设计所需的时间。

选择调试器

开发人员的工作台上必备的第一种最重要工具是调试器。调试器的作用就如同包含应用代码的主机开发机与将要运行应用代码的目标嵌入式处理器之间的桥梁。调试器提供几种关键功能:

提取已编译和链接的应用,并将其加载到目标存储器中。

向目标处理器告知调试器已连接,并配置所有板载硬件调试模块和功能。

负责设置软件和硬件断点。

在调试过程中可用于读取寄存器和片上存储器。

接收实时应用程序跟踪信息以用于调试应用程序。

在很多实例中,开发人员仅选择他们能够找到的最低成本的调试器,或很多开发套件附带的默认板载 (OB) 调试器。这种做法的问题在于 OB 调试器的功能非常有限。

比较调试器之间差异的一种很好的方法是检查SEGGER提供的调试工具。很多不同微控制器供应商的多种开发套件都提供了基于 SEGGER J-Link 的 OB 调试器。下图显示了面向各种目标内核的不同 J-Link OB 调试器的典型特性集(图 1)。

图 1:低成本开发板附带的各种 SEGGER J-Link OB 调试器的特性集示例(图片来源:SEGGER)

请注意,表格的最右侧显示了三个关键速度特性:SWO 速度、接口速度和下载性能。对于大多数零件而言,这些速度都不超过 4 MHz,其中大多数速度远低于这个数字。

初看起来,这些 J-Link OB 调试器的指标数据还不错,毕竟它们是免费的。但是,如果将这些特性与J-Link Ultra+或J-Trace等全功能调试器进行比较(图 2),您会改变这种看法。

图 2:J-Link 系列调试器提供专业级调试功能,速度高达 100 MHz。(图片来源:SEGGER)

请注意:最低 SWO 速度为 30 MHz,最高达到 100 MHz。SWO 接口用于调试,也用于接收一些跟踪数据。这种速度增加,再加上无限制断点、以太网选项和嵌入式跟踪缓冲区 (ETB) 等额外特性,使得这些调试器成为极其高效的工具。与开发套件上的基本调试器相比,这些调试器的功能更为强大和丰富,不仅有助于加快编程速度,还能缩短实际调试系统的时间。

我们以 J-Link Ultra+ 为例。这是一款全功能专业调试器,其特性包括无限制断点,以及极快的 SWO 和接口时钟速率(图 3)。

图 3:J-Link Ultra+ 是一款全功能专业调试器,其特性包括无限断点,以及极快的 SWO 和接口时钟速率。(图片来源:SEGGER)

希望将嵌入式工作台提升到全新水平的开发人员应该考虑使用 SEGGER J-Trace(图 4)。J-Trace 不仅支持与 J-Link Ultra+ 相同的功能,还能够使用 Arm 嵌入式跟踪宏单元 (ETM) 接口连接到目标器件。

ETM 包含更多的数据通信通道,让开发人员能够检索有关应用程序及微控制器工作状况的更多信息。例如,开发人员能够使用 ETM 来执行代码分支分析,甚至执行指令跟踪。

图 4:J-Trace 支持 ETM 接口,除了执行代码覆盖分析之外,还让开发人员能够对应用程序执行指令跟踪。(图片来源:SEGGER)

嵌入式系统分析工具

一旦开发人员获得了功能合适的调试器,他们将希望找到和选择多种工具,以协助他们调试和分析系统。开发人员在开发周期中平均有多达 50% 的时间花费在调试软件上。调试系统的效率越高越好。

开发人员应该考虑采用几种工具来分析系统。这些工具包括像B&K PrecisionBK2190E这样的双通道 100 MHz 范围的传统示波器,或者SparkFun ElectronicsLogic Pro 8 USB 逻辑分析仪。Logic Pro 8 非常适合用于分析通用输入/输出行为和通信协议。该分析仪能够同时监控多达八个通道,并提供触发功能,用于捕捉电平、上升沿或下降沿。

图 5:Logic Pro 8 USB 逻辑分析仪是用于分析通用输入/输出行为和通信协议的强大工具。(图片来源:SparkFun Electronics)

每个工作台都需要的常规原型开发工具

虽然软件开发人员并非硬件工程师,但准备一些有助于检测和操作硬件的工具仍然很有用。第一种必不可少的工具是一组跳线。跳线似乎总是供应不足,但它是将外部传感器或器件连接到开发套件所必需的。一组Bud Industries母头对母头跳线和公头对公头跳线足以包含所有必需的组合。

图 6:母头对母头跳线(图示)和公头对公头跳线对于快速原型开发和嵌入式系统故障排除至关重要。(图片来源:Bud Industries)

除了跳线之外,还应准备一对优质Aven Tools尖嘴钳和Apex Tool GroupMS54V4 英寸半埋式椭圆头钢丝钳,以便将跳线放置到拥挤空间内,或者进行切割以在原型板上轻松连接。购买一对高质量工具将确保您能够在需要时随时使用。

最后,每位开发人员还需要备有放大灯,例如 Aven 的 5 英寸ProVue SuperSlim LED灯,以便轻松查看 PC 板上的丝印。软件开发人员使用放大灯的频率远少于硬件工程师,但有时需要对丝印进行快速修改,或者电路板上的超小丝印需要放大或额外照明。

构建工作台的技巧和诀窍

构建工作台有时似乎非常简单,但令人吃惊的是很多团队没有最基本的工具。以下一些技巧有助于您构建出“终极”嵌入式工作台:

找出开发过程中的主要瓶颈,确定是否有工具可以消除这些瓶颈。

购买高质量的工具。劣质工具容易磨损和损坏,经常需要更换。优质工具可以持续使用 20 年甚至更长时间。

不要让价格成为主要决定性因素。从长远来看,多花一些钱购买优质工具是值得的。

进行成本效益分析以及投资回报分析。当工具要使用五年甚至更长时间,或者仅在开发周期中使用数月时,可以更容易确定成本的合理性。

对于易损坏的低成本工具,购买两套,确保手头有备用。

分阶段逐步构建工作台。构建专业的工作台可能花费数千美元。分批购买工具,这样有助于摆脱预算制约。

不要害怕购买已经用过的工具,只要其来源可靠且维护状态良好即可。

在软件调试方面,逻辑分析仪可以取代示波器。

总结

构建高效的工作台不能贪图便宜。必须找到并购买适合开发工作的工具,它们能够提高效率和消除障碍,帮助提升整体产品质量,甚至降低开发人员的压力(至少减少他们遇到的问题)。

请仔细评估哪些工具能让开发过程变得更加简单,并确定这些工具是否能够长期使用。尽可能不要考虑如何省钱。只要买到合适的工具就能获得回报,因为功能完备且配置适当的工作台是效率的保证。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    39

    文章

    7715

    浏览量

    170875
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3716

    浏览量

    133114
  • 调试器
    +关注

    关注

    1

    文章

    325

    浏览量

    24931

原文标题:分分钟教你巧妙构建终极嵌入式软件工作台

文章出处:【微信号:elecfans,微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CW32嵌入式软件开发的必备知识

    嵌入式系统中最常用的编程语言,因为它们提供了直接访问硬件的能力,并且代码执行效率高。 了解汇编语言,用于编写底层驱动、中断处理程序以及性能要求极高的代码段。 对其他编程语言如Python、Java等有
    发表于 11-28 07:48

    嵌入式系统的定义和应用领域

    都采用了嵌入式系统。同样,军事及航天类产品如四轴飞行器、雷达和作战机器人也离不开嵌入式系统的支持。此外,家电类产品如数字电视、扫地机器人和智能家电,以及医疗电子类产品如生化
    发表于 11-17 06:49

    嵌入式软件测试与专业测试工具的必要性深度解析

    嵌入式系统作为控制、监视或辅助装置运行的专用计算机系统,其软件测试面临着独特的挑战和严格的要求。专业测试工具嵌入式软件开发过程中发挥着不可
    发表于 09-28 17:42

    恩智浦配置工具助力嵌入式系统设计

    设计嵌入式系统需要硬件和软件之间的无缝协调。恩智浦配置工具是一款全面且用户友好的解决方案,旨在帮助开发人员简化系统设置流程,加快开发进程并减少潜在错误。
    的头像 发表于 09-22 16:37 1629次阅读

    新一代嵌入式开发平台 AMD嵌入式软件和工具2025.1版现已推出

    AMD 2025.1 版嵌入式软件和工具是面向新一代嵌入式系统开发而打造的综合平台,全面加速概念构想到部署落地。 2025.1 版嵌入式软件
    的头像 发表于 08-20 09:15 3642次阅读

    AMD 2025.1版嵌入式软件和工具的新增功能

    AMD 2025.1 版嵌入式软件和工具是面向新一代嵌入式系统开发而打造的综合平台,全面加速概念构想到部署落地。
    的头像 发表于 08-15 15:32 1045次阅读

    入行嵌入式应该怎么准备?

    常会遇到各种问题和错误。因此,具备良好的调试和故障排除能力是非常重要的。需要学会使用调试工具和设备,如示波器、逻辑分析仪和仿真器,以便于分析和解决问题。 六、领域知识嵌入式
    发表于 08-06 10:34

    Linux嵌入式和单片机嵌入式的区别?

    : 单片机嵌入式 :开发环境相对简单,通常使用C语言或汇编语言进行编程,开发工具包括Keil、IAR等。 Linux嵌入式 :开发环境较为复杂,除了需要掌握C语言,还需要了解Linux操作
    发表于 06-20 09:46

    嵌入式超声电机微步距控制检测系统设计

    摘 要:设计了一种行波超声电机的嵌入式微步距控制检测系统,该系统分为三大部分:嵌入式上位机、电机控制器和检测系统。以 ARM9微控制器作为主
    发表于 06-11 14:43

    嵌入式系统开发圣经【干货】

    内容包括:嵌入式系统的介绍、嵌入式SoC硬件系统概论、嵌入式系统软件开发。适用于产品主管、
    发表于 03-12 13:58

    IAR分析嵌入式系统的市场前景

    作为全球领先的嵌入式系统开发软件解决方案供应商,IAR始终致力于为客户提供高性能与高安全性的开发工具,支持不同行业的嵌入式产品开发。
    的头像 发表于 02-26 15:34 905次阅读

    如何提高嵌入式代码质量?

    嵌入式代码的质量是至关重要的。本文将探讨如何通过有效的开发方法和工具来提高嵌入式代码的质量,以确保系统的可靠性和可维护性。 理解嵌入式
    发表于 01-15 10:48

    使用SEGGER工具实现嵌入式应用开发

    嵌入式系统的可能性是无限的,从创建智能家居设备到为工业自动化提供动力,但是有这么多的工具、技术和流程要学习,你从哪里开始呢?
    的头像 发表于 01-10 16:27 1100次阅读

    嵌入式工程师常用的开发工具有哪些?

    嵌入式工程师常用的开发工具有哪些? 在嵌入式系统开发的广阔领域中,嵌入式工程师们凭借着一系列强大的工具
    发表于 12-20 15:29

    什么是嵌入式人工智能

    嵌入式人工智能的目标是使嵌入式系统具备智能化的感知、分析和响应能力,从而实现自主决策、自适应学习和智能交互等功能,以提高系统的性能、效率和
    的头像 发表于 12-11 09:23 1524次阅读
    什么是<b class='flag-5'>嵌入式</b>人工智能