在线仿真器(ICE)是一种有效的工具,可为MCU设计人员提供调试代码和运行硬件的能力。过去,这些都是庞大,昂贵,复杂的工具,通常很难学习和使用。它们带有自己的脐带连接,实际上用目标板上的微控制器替换了一个粘合版本,允许增加实时控制包装。
几乎普遍使用表面贴装器件,这已不再是一种可行的方法。实际上,每个微控制器供应商都支持系统内编程,以及调试和仿真功能。调试硬件结合到当今的微控制器中,再加上使用调试串行总线(如USB和JTAG),设计工程师可以以较少侵入性和低成本的方式测试固件和硬件。让工程师访问所有内部MCU资源还可以缩短关键的产品上市周期。
本文介绍了一些微控制器调试和测试系统以及为嵌入式系统的调试和开发执行类似ICE和ICE的功能的方法。
遗留改款
正如设计工程师可以证明的那样,MCU可以保持真正向后兼容,同时仍然在进行功能增强和性能改进。接受一些硅手术的传统架构是Atmel AT89C51系列。这些部件基于旧的但仍然非常流行的8051架构,增加了现代外围设备,如CAN,USB,SPI和智能卡接口。此外,更大量的闪存和RAM(高达128 K和8 K)以及混合信号功能(10位A/D转换器)使这些旧架构能够满足当前的设计要求。
使用AT89OCD-01 USB仿真器(图1),其持续实用程序的关键是系统内编程和仿真器支持。仿真器和Windows软件由USB端口提供支持,允许设计人员将存储区和特殊功能寄存器划分为可自定义的显示。这有助于设计人员在微控制器的所有重要部分上保持可视选项,并调试特定的功能和代码块。
图1:使用串行调试技术而不是粘合剂和替换脐带支持现代一代传统核心,如流行的8051。
可以通过用户定义的触发器启动和停止“无限”数量的软件断点和跟踪缓冲区。 Atmel仿真器还支持其他标准调试和跟踪功能,如内存位置上的步进操作和硬件断点,特殊功能寄存器更新和RAM访问(内部和外部)。当然,它还支持代码下载和睡眠模式,用于调试低功耗设计。
请注意,此工具可与Java运行时环境和KeilμVision2或3软件开发工具配合使用,以实现从代码编写到调试和测试的无缝转换。目标板上的小型6针连接器是将PCB与开发和支持工具连接所需的全部(图2)。还提供Atmel MCU产品线的产品培训模块。
图2:目标板上的非侵入式6针连接器允许完整调试,分步操作和将代码上传到目标板。
Silicon Labs也是现代化8051内核的供应商,支持其C8051Fxx系列,具有类似的基于USB的DEBUGADPTR1-USB,它使用10针SIP调试电缆通过JTAG与目标微控制器板通信(图3) 。为了在调试操作期间保持目标板的实时,调试器和仿真器需要32 kHz或更高的系统目标时钟。
图3:Segger J-Link仿真器的USB供电10针SIP接头使用JTAG协议来驱动,监控和编程目标处理器。
ARM®支持
支持ARM系列处理器已付出了巨大的努力。这些流行的部件提供了哈佛架构RISC处理器的可扩展构造。每个基于ARM的MCU制造商都将标准化,兼容的内核与其独特的风格相结合,以提供一系列丰富的功能集,外设,性能和功能的处理器。
大多数芯片制造商都支持第三方编译器和工具套件,以及调试和编程接口。第三方支持来自IAR和Keil等编译器供应商,以及Segger和Olimex等工具公司。
IAR JTAGJET-ARM提供标准的ETM 38引脚连接或20引脚Cortex SWD头适配器,以支持ARM 7,ARM 9,ARM 11,MP和Cortex内核,仅举几例。它支持多核调试和高达400 MHz CPU速度的跟踪采样。
一些不错的功能是它的快速代码下载,自动进程初始化以及对所有片上断点,触发器和过滤的支持。它还支持Linux和RTOS,并支持嵌入式Linux调试。
Keil是工具和编程编译器的另一个主要提供商,现在是ARM集团的一部分。该公司提供ULINKPRO高速调试和跟踪单元,用于支持ARM 7,ARM 9和Cortex内核,它与通信堆栈和实时操作系统紧密集成(图4)。
图4:Keil ULINK系统将开发计算机和目标板之间的通信堆栈,代码编译和RTX实时操作系统紧密结合在一起。
Keil MDK-ARM是一个完整的软件开发环境,它将C/C ++编译器与公司的确定性RTX实时操作系统相结合。它只需要很小的内存占用。用于TCP,CAN,USB和网络的中间件库提供具有标准驱动程序类的堆栈,这可以节省时间。 MDK与ULINKPRO协同工作,记录执行的指令并提供完整代码覆盖的时间分析。
Segger Microcontroller Systems还支持使用工具和中间件库进行嵌入式处理器开发,并提供高级ARM工具。 8.16.28 J-LINK ULTRA + J-Link设备是基于USB的J-Tag仿真器,支持ARM内核。它使用ARM定义的标准20引脚接头,为大多数流行的微处理器提供全速USB下载到Flash。
仿真器支持串行线查看器和串行线调试器模式,其中单个I/O提供密钥寄存器,I/O和核心寄存器的快照映像。值得注意的是,一些微型制造商使用像Segger这样的第三方工具作为其评估和开发套件的开发产品。它甚至可以作为MCU制造商工具集的一部分以某种形式免费提供。
不受欢迎的道路
没有广泛使用或添加专用功能的零件通常也需要专门的工具。 DSP处理器是填补所需角色的专用处理器架构的一个示例。
ADI公司的ADZS-ICE-100B是一款非侵入式ICE单元,可与该公司的Blackfin®系列DSP处理器配合使用。它将调试和代码监视功能与Visual DSP ++设计环境结合在一起,以提供与其他仿真器和调试器相同的高级控制和优势。
Microchip与专业工具制造商合作,为更专业的部件制作自己的开发工具套件。 Custom Computer Services的ICD-U64是MicrochipPIC®和dsPIC器件的在线编程器,仿真器和调试器。该开发环境带有大量示例程序库和C驱动程序,可用于各种串行闪存,传感器,收发器和各种外围芯片。
德州仪器(TI)也提供自己的工具以及支持第三方工具集。一个例子是流行但专有的MSP430系列器件,TI和Olimex的仿真器都支持这些器件。
Olimex提供内置调试器,仿真器和编程器及其MSP430-JTAG-TINY-V2工具。同样,TI为MSP430指定的MSP-FET430PIF提供嵌入式调试和编程器工具。
-
处理器
+关注
关注
68文章
18208浏览量
221928 -
嵌入式
+关注
关注
4976文章
18237浏览量
287869 -
仿真器
+关注
关注
14文章
987浏览量
82972
发布评论请先 登录
相关推荐
评论