创建最终的嵌入式软件工作台---凯利讯半导体

  以一种及时有效的方式构建嵌入式系统,需要软件开发人员在工作台上有合适的工具来完成工作。虽然预算通常是有限的,但是每个嵌入式软件工程师都需要大大减少构建、调试和验证其设计所需的时间。

  好消息是,最终的嵌入式软件工作台不需要成千上万美元,它包含了完成正确工作所必需的所有工具。但是,每个开发人员都应该拥有一些基本的工具。这些范围从专业的调试探针和逻辑分析仪到简单的手动工具。让我们看看需要哪些工具,以及如何选择它们。


  选择一个调试器

  开发人员在其工作台中需要的第一个也是最重要的工具是调试器。调试器的行为类似于主机开发机器之间的桥梁,它包含应用程序代码,以及运行该应用程序代码的目标嵌入式处理器。调试器提供了几个关键功能:

  它接受编译和链接的应用程序并将其加载到目标内存中。

  它与目标处理器通信,它连接和配置任何车载硬件调试模块和功能。

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

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

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

  在许多情况下,开发人员只需选择他们能找到的最低成本调试器,或者使用许多开发工具包的默认的on-board (OB)调试器。这种方法的问题在于,OB调试器非常有限。

  比较调试器之间的差异的一个很好的方法是检查SEGGER提供的调试工具。在许多不同的微控制器供应商的许多开发工具包中都可以找到SEGGER j - linkbased OB调试器。不同目标的J-Link OB设备具有典型的特征集(图1)。

  各种SEGGER J-Link OBs的样本特征集图像。


  图1:与低成本开发板一起出现的各种SEGGER J-Link OBs的样例特性集。(图片来源:凯利讯半导体)

  请注意在表的最右端有三个关键的速度特性:SWO速度、接口速度和下载性能。在大多数情况下,这些速度不超过4兆赫,大部分特征显著地减少。

  乍一看,这些J-Link OB数字似乎并不那么糟糕,因为它们是免费的。但是,当将这些特性与一个功能完整的调试器(如J-Link Ultra+或J-Trace)进行比较时,这种透视图会发生变化(图2)。

  Segger J-Link系列调试器的表。


  图2:J-Link系列调试器提供了具有高达100mhz速度的专业级调试功能。(图片来源:凯利讯半导体)


  请注意,最小的SWO速度是30mhz,并且高达100mhz。SWO接口用于调试和接收一些跟踪数据。这一速度增加,除了额外的特性,例如无限制的断点和以太网和嵌入式跟踪缓冲区(ETB)跟踪选项,使得这些调试器非常高效。它们比在开发工具包中发现的基本调试器更强大,功能更丰富,它不仅可以帮助提高编程速度,还可以帮助改进系统调试的时间。

  J-Link超+。这是一个功能齐全的专业调试器,包括无限的断点和极快的SWO和接口时钟频率(图3)。

  Segger J-Link Ultra+全功能专业调试器的图像。


  图3:J-Link Ultra+是一个功能齐全的专业调试器,包括无限断点和极快的SWO和接口时钟频率。(图片来源:凯利讯半导体)

  希望将嵌入式工作台带到下一个层次的开发人员应该考虑SEGGER J-Trace(图4)。J-Trace不仅支持与J-Link Ultra+相同的功能,而且还可以使用Arm嵌入式跟踪Macrocell (ETM)接口连接到目标设备。

  ETM包含额外的数据通信通道,允许开发人员检索更多关于他们的应用程序的信息,以及他们的微控制器是如何操作的。例如,开发人员可以使用ETM执行代码分支分析,甚至执行指令跟踪。

  Segger J-Trace Pro的图像。


  图4:J-Trace支持ETM接口,它允许开发人员在他们的应用程序上执行指令跟踪,并执行代码覆盖率分析。(图片来源:凯利讯半导体)


  嵌入式系统分析工具

  一旦开发人员获得了一个有能力的调试器,他们就会想要识别并选择几个工具来帮助调试和分析他们的系统。平均而言,开发人员花费他们开发周期调试软件的50%。他们越有效地调试他们的系统,就越好。

  开发人员应该考虑几个工具来分析他们的系统。这些包括传统的示波器,如B&K Precision BK2190E,它是一个双通道,100兆赫的范围,或SparkFun电子逻辑Pro 8 USB逻辑分析仪。逻辑Pro 8有助于分析通用输入/输出行为,以及通信协议。该分析仪可同时监测多达8个通道,具有触发水平、上升或下降边缘的触发能力。

  SparkFun逻辑Pro 8 USB逻辑分析仪图像。


  图5:逻辑Pro 8 USB逻辑分析仪是分析通用输入/输出行为和通信协议的一个很好的工具。(图片来源:凯利讯半导体)

  一般的原型工具,每个工作台都需要。

  尽管软件开发人员不是硬件工程师,但是保留一些工具来帮助检查和操作硬件仍然是很有用的。第一个不可缺少的工具是一套跳线。跳线似乎总是供应不足,但有必要将外部传感器或设备连接到开发工具包。一套由女性对女性的跳投和男性对男性跳投的组合,足以涵盖所有必要的组合。

  女性对女性跳投的形象。


  图6:女性对女性的跳线(如图所示)和男性对男性的跳线对快速原型化的努力和对嵌入式系统的故障排除至关重要。(图片来源:凯利讯半导体)

  除了跳投,也是有用的保持在一个良好的一双落水洞工具尖嘴钳和顶端工具组MS54V 4英寸半平椭圆头剪线钳,可用于在狭小空间里的跳投,或降低它们来创建简单的原型板上连接。购买高质量的工具将确保它们在你需要的时候是可用的。

  最后,每个开发人员还应该有一个放大的灯,如Aven的5英寸ProVue SuperSlim LED灯,使其更容易在pc板上阅读丝网。软件开发人员将使用比硬件工程师更小的放大镜,但有时需要快速修改,或者需要一些放大或额外的照明。


  构建工作台的技巧和技巧

  把工作台放在一起有时是显而易见的,但令人惊讶的是,许多团队没有最基本的供应。下面是一些帮助构建“终极”嵌入式工作台的建议:

  确定开发过程中的主要瓶颈,并确定是否存在减轻它的工具。

  购买质量工具。质量差的工具经常被替换,因为它们磨损或容易损坏。一个好的工具可以持续20年甚至更长时间。

  不要让价格成为首要的决定因素。从长远来看,一个好的工具需要额外的一点钱是值得的。

  执行成本/收益分析和ROI。当一个工具持续5年或更长时间,或者将一个开发周期缩短几个月,就更容易证明成本。

  对于那些可能被损坏的低成本工具,买两个,这样就有备用的了。

  随时间和阶段构建工作台。创建一个专业的工作台需要花费数千美元。在这里购买一些工具可以帮助分散预算限制。

  不要害怕购买使用过的工具,只要它们是来自一个已知的、精心照顾它们的资源。

  对于软件调试来说,逻辑分析仪可以代替示波器去工作。


  结论

  建立高效、高效的工作平台并不意味着廉价。它是关于确定和购买合适的工作工具:这些工具可以提高效率和消除障碍。有助于提高整体产品质量的工具,甚至可以减少开发人员的压力(或者至少是他们遇到的问题)。

  仔细评估哪些工具将使开发过程更容易,并确定这些工具是否可以长期使用。如果可以的话,不要吝惜你的钱,让这个小豆人高兴。购买合适的工具,并获得充足的、合适的工作平台带来的回报。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ARM Cortex-M3是一种广泛应用于嵌入式系统的32位处理器架构。NXP LPC1768是基于ARM Cortex-M3架构的一款微控制器,具有丰富的外设和易于使用的开发环境。 在使用NXP LPC1768进行嵌入式开发实例时,我们需要以下步骤: 1. 硬件准备:准备好NXP LPC1768开发板和必要的连接线材。将开发板连接到计算机,确保正确安装驱动程序。 2. 开发环境设置:ARM Cortex-M3开发使用Keil MDK软件包,下载并安装Keil MDK开发环境。将LPC1768相关文件添加到Keil MDK,并设置正确的编译和调试选项。 3. 编写代码:使用Keil MDK的集成开发环境,我们可以编写C或汇编语言程序来控制LPC1768的外设。例如,可以通过GPIO控制LED灯,通过UART与计算机通信等。 4. 编译和下载:通过Keil MDK编译代码,生成二进制文件。然后,使用编程器将二进制文件下载到LPC1768开发板上。 5. 调试和测试:使用Keil MDK的调试功能,可以在LPC1768上单步执行程序,观察变量的值和寄存器的状态,以确保程序正确运行。 6. 扩展功能:利用LPC1768的丰富外设,我们可以实现各种功能,如通过ADC读取模拟信号,使用PWM控制电机速度等。开发者可以根据具体需求进行相应的硬件和软件开发。 总的来说,ARM Cortex-M3嵌入式开发实例基于NXP LPC1768的开发,需要进行硬件准备、开发环境设置、编写代码、编译和下载、调试和测试等步骤。通过这些步骤,我们可以实现各种功能并开发嵌入式应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值