【超实用】嵌入式开发中的几种调试方法,总有一款适合你!

kelly的头像
kelly 发布于:周二, 09/20/2016 - 14:44 ,关键词:

越来越多的人选择从事嵌入式开发工作,伴随而来的便是各种对硬件和寄存器的抓耳挠腮。你真的认为你现在的调试方式就是最合适的吗?先看看小粥为你带来的嵌入式调试实用秘籍!

使用集成开发环境开发基于ARM 的应用软件,包括编辑、编译、汇编、链接等工作全部在PC机上即可完成,调试工作则需要配合其他的模块或产品方可完成,目前常见的调试方法有以下几种:

1、指令集模拟器

优点:部分集成开发环境提供了指令集模拟器,可方便用户在 PC 机上完成一部分简单的调试工作。

缺点:由于指令集模拟器与真实的硬件环境相差很大,因此即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行,用户最终必须在硬件平台上完成整个应用的开发。

2、驻留监控软件

优点:驻留监控软件( Resident Monitors )是一段运行在目标板上的程序,集成开发环境中的调试软件通过以太网口、并行端口、串行端口等通讯 端口与驻留监控软件进行交互,由调试软件发布命令通知驻留监控软件控制程序的执行、读写存储器、读写寄存器、设置断点等。

缺点:驻留监控软件的不便之处在于它对硬件设备的要求比较高,一般在硬件稳定之后才能进行应用软件的开发,同时它占用目标板上的一部分资 源,而且不能对程序的全速运行进行完全仿真,所以对一些要求严格的情况不是很适合。

3、JTAG 仿真器

优点:JTAG仿真器也称为JTAG调试器,是通过 ARM 芯片的JTAG边界扫描口进行调试的设备。 JTAG 仿真器比较便宜,连接比较方便,通过现 有的JTAG边界扫描口与ARM CPU 核通信,属于完全非插入式 ( 即不使用片上资源 ) 调试,它无需目标存储器,不占用目标系统的任何端 口,而这些是驻留监控软件所必需的。

缺点:由于 JTAG 调试的目标程序是在目标板上执行,仿真更接近于目标硬件,因此,许多接口问题 ,如高频操作限制、 AC 和 DC 参数不匹配,电线长度的限制等被最小化了。

使用集成开发环境配合 JTAG 仿真器进行开发是目前采用最多的一种调试方式。

4、在线仿真器

优点:在线仿真器使用仿真头完全取代目标板上的 CPU,可以完全仿真 ARM 芯片的行为,提供更加深入的调试功能。

缺点:这类仿真器为了能够全速仿真时钟速度高于100MHz的处理器,通常必须采用极其复杂的设计和工艺,因而其价格比较昂贵。

在线仿真器通常用在ARM的硬件开发中,在软件的开发中较少使用,其价格高昂也是在线仿真器难以普及的因素。

看了这么多种调试方法,哪种适合你呢?

文章来源:周立功单片机

围观 622