当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]简介通常在嵌入式应用中,微控制器的每个端口引脚对于实际应用来说都是必需的,没有多余的引脚。然而,开发人员可采用其他方法来解决这个问题。大部分MAXQ微控制器可重写内

简介

通常在嵌入式应用中,微控制器的每个端口引脚对于实际应用来说都是必需的,没有多余的引脚。然而,开发人员可采用其他方法来解决这个问题。大部分MAXQ微控制器可重写内部程序存储器(如闪存或EEPROM),支持标准JTAG/TAP接口(也称为调试端口)。外部主机可利用该接口执行在线调试或在线编程(引导装载)功能。该接口中的所有引脚通常可复用为标准GPIO端口引脚功能,从而使这些引脚在开发阶段结束之后仍然可以被使用。本应用笔记阐述了在常规应用中如何复用这些引脚。同时,本应用笔记还指出了在复用这些引脚时需要考虑的事项。

应用系统开发阶段

在开发阶段,JTAG兼容调试端口可提供许多有用功能。首先,调试端口允许应用系统在外部主机控制下对其加载(使用开发环境如MAX-IDE、 Rowley CrossWorks或IAR Embedded Workbeach?)。可以根据以后的测试需求对应用系统进行测试、修改和快速加载。其次,调试端口允许执行MAXQ架构的在线调试功能,这些调试功能包括寄存器的读写操作、指令的单步调试,并可查看程序、数据、堆栈存储器。引导装载和在线调试功能会对应用系统所能使用的存储器资源产生一些微小的影响。因为在线调试功能完全由MAXQ硬件和公用程序ROM实现。

在完成了应用系统的开发测试后,不再需要使用在线调试功能。此外,在大批量生产中,可重新编程的MAXQ器件将被掩模ROM器件替代,不再需要在线编程功能。这就意味着应用系统不再使用调试端口,此时调试端口可废弃不用也可有效地对其再利用。当MAXQ器件的GPIO端口引脚数不够使用时,若把专门用于JTAG调试的端口引脚重新利用起来,并且让常规应用系统使用这些引脚,将会起到意想不到的作用。

调试端口引脚的重复使用

实现JTAG兼容调试端口的连接用到下面4个引脚:

TCK:测试时钟—MAXQ输入

TMS:测试模式选择—MAXQ输入

TDO:测试数据输出—MAXQ输出

TDI:测试数据输入—MAXQ输入

这4个引脚可以典型地复用为4个GPIO端口;具体复用引脚随MAXQ器件的不同而不同。在复位或上电复位(POR)状态后,调试端口默认为使能状态,常规应用系统不能使用这些端口引脚。为了屏蔽调试端口功能使端口引脚能够用于常规目的,必须把系统控制寄存器的TAP位(SC.7)清零。然后按正常方式通过PD、PO和PI寄存器控制这些端口引脚。

硬件设计注意事项

若在系统开发阶段和批量生产阶段使用同一套硬件,不论调试接口的端口作为GPIO还是JTAG/TAP使用,都必须使硬件能够正常运行。例如:当这些引脚用于JTAG/TAP时,任何与这些引脚相连的外部器件都必须释放这些引脚,使其处于三态模式,以保证主机与MAXQ这些引脚之间的正确驱动。此外,在线调试或引导加载过程中,连接到这些引脚的器件不能受主机和MAXQ在这些引脚上的任何驱动信号的影响。这一点特别需要注意,因为对这些信号的响应有可能造成器件损坏。

举一个例子,假设端口中的一个引脚既被用于接收TCK信号(当被用于JTAG/TAP模式时)又被用于控制继电器(在GPIO模式时)。当用 JTAG接口调试器件时,由于TCK信号的快速翻转将导致继电器的接通和断开,可能导致连接到继电器的外部设备损坏。为了防止这种情况发生,在器件将要引导加载或进行在线调试时,所有通过JTAG/TAP接口与这些引脚相连的外部器件都必须被禁用。

软件设计注意事项

禁用JTAG接口的操作非常简单,任何时候只要把TAP (SC.7)位清零,系统将立即使用这些端口引脚。为了把应用系统设置在适当模式,系统开发人员倾向于在应用程序代码的开始就把TAP位清零。然而,这么早就把TAP位清零会引起应用系统开发中出现一些问题。

如果应用系统中采用掩模ROM MAXQ器件(这种器件不能被重新编程),那么在应用程序的起始位置对TAP清零就不合理。这种情况下,由于程序代码已经烧入器件且不能更改,将无法使用引导加载和在线调试功能。

然而,对采用可重新编程的MAXQ器件的应用系统来说,其应用软件应该总是在TAP位清零和禁用JTAG接口之前提供几秒钟的延时。如果紧随复位操作之后马上对TAP位清零,在试图重新加载或调试应用程序的时候可能会顺序发生以下事件:

主机驱动一个低电平/RESET信号,从而使MAXQ处于复位状态。

主机释放/RESET复位信号。

MAXQ脱离复位状态并开始运行程序代码,因此JTAG接口立即被禁用。

主机试图通过JTAG接口与器件通信,但通信已经无法进行。

这个过程与应用系统在复位之后马上进入关机状态或低功耗关断模式类似。对于可以禁用/RESET引脚的器件,如MAXQ3210 /MAXQ3212微控制器,这个问题更加严重。这种情况下,实际的复位操作取决于主机触发的顺序,还取决于器件是仅通过/RESET引脚还是通过上电、断电过程复位的。

为了避免上述软件问题,任何禁用/TAP调试端口或/RESET引脚的应用系统在启动时都应该在关闭调试引擎之前提供几秒钟的延时。这个时间延迟可以使外部主机在JTAG接口被禁用之前通过它对MAXQ进行控制。另一种方法是:应用系统可通过检查别的端口引脚(由跳线器或按钮控制)上的输入电平来确定JTAG端口使能还是禁用。

结论

MAXQ微控制器的TAP (SC.7)位提供了JTAG接口的复用功能。只要遵循某些硬件和软件设计的注意事项,JTAG接口的4个引脚就可用于调试/引导加载,或当作通用I/O 使用。对于引脚数目受限的系统来说,这些引脚的复用可提供额外的资源。而当采用MAXQ器件开发应用系统时,这些引脚的复用也会提高系统的灵活性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭