- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MAXQ架构与嵌入式工作台开发环境的应用.doc
MAXQ架构与嵌入式工作台开发环境的应用|第1
摘要:本文将介绍MAXQ微控制器架构及与内核紧密集成的硬件调试引擎特性,使用IAR公司的嵌入式工作台(Embedded AXQ硬件调试引擎特性
新型MAXQ结构为应用开发的编程了拓宽了渠道。这是因为每个MAXQ微控制器都包含一个与微控制器内核紧密集成的硬件调试引擎。
而架构中第一款芯片就是MAXQ2000,本文将MAXQ微控制器架构与硬件调试引擎特性,结合IAR的Embedded AXQ2000评估板一起使用对其应用程序开发作分折说明,从而领会其使用与技巧。
将MAXQ2000微控制器的在线调试与程序装载功能与IAR Embedded AXQ2000基于硬件的调试引擎与自举装载过程在专用的JTAG端口运行,可以全面调试访问,而对系统资源的影响最小。
2、硬件调试引擎
2.1在线调试特性
与微控制器内核紧密集成的硬件调试引擎,用来控制MAXQ2000的调试特性。该调试引擎可以调用片上的固定用途ROM中的服务子程序,支持广泛的调试特性。具体如下:
* 对集成程序闪存的读取访问。
* 对板上数据SRAM的读/写访问。
* 对16×16堆栈存储器的读取访问。
* 对所有MAXQ2000系统与外设寄存器的读/写访问。
* 单步(跟踪)程序执行。
* 最多四个地址断点,在代码存储器中特定的单元停止程序的执行。
* 两个数据存储器匹配断点,在数据存储器中特定单元被访问时停止程序的执行。
* 两个寄存器断点,在出现对特定系统或外设寄存器的写访问时(不能与数据存储器匹配断点同时使用),并且写入寄存器的数据与特定值匹配时停止程序的执行。
* 密码匹配功能(用来解锁其余的调试功能)。
所有与调试引擎的通信都通过MAXQ2000专用的JTAG测试访问端口(TAP)接口完成,该接口与JTAG IEEE标准1149兼容。该接口由四个信号组成,由MAXQ2000端口引脚复用得到,定义如下:TMS(测试模式选择)-与P4.2复用;TCK(测试时钟)-与P4.0复用;TDI(测试数据输入)-与P4.1复用;以及TDO(测试数据输出)-与P4.3复用。
尽管JTAG TAP端口专门用于系统内调试与系统内编程,不过,一旦应用开发完成,传输JTAG TAP端口信号的四个端口引脚可以被释放用于其他目的。JTAG端口在复位后默认为激活状态,但是一旦运行,应用软件可以关闭端口,将四个相关的端口引脚用于其他用途。
从MAXQ2000内核来看,JTAG接口与调试引擎异步工作。通过JTAG端口进行的通信不需要与MAXQ2000运行的时钟速率相同,不过对MAXQ2000来说,TCK频率的最大值被限定在1/8系统时钟速率以下。
在MAXQ2000执行代码时,可以通过调试引擎读取或写入断点设置。该模式被称为后台模式,在这种模式下,调试引擎独立于CPU内核之外工作。
为了完成其他操作,如存储器与寄存器的读写,调试引擎控制MAXQ2000的内核,并切换到执行固定用途ROM中的调试服务子程序。该模式被称作调试模式,该模式下,调试引擎中断了正常的程序执行。在这种情况下,用户应用程序被暂时挂起,等到调试函数执行完毕后继续执行,与中断服务子程序的处理方式相同。
由于在应用程序中JTAG TAP端口并不使用,因此组成JTAG端口的端口引脚可以被应用软件收回。调试功能所需的所有附加代码都位于固定用途ROM中,因此,调试功能消耗的系统资源只是少量的数据SRAM,以及一层程序堆栈(用来存储调用调试子程序的返回地址)。最多19个字节的数据SRAM(地址0x07ED至0x07FF)被保留用于调试服务子程序。若某个应用程序不使用在线调试,则这些数据SRAM单元可供应用程序使用。
2.2程序装载功能-通过JTAG进行集成闪存编程
JTAG TAP端口也可被用于自举装载功能,甚至在不使用调试功能时也有效。通过JTAG TAP接口设置3个配置位,然后从复位中释放MAXQ2000,将控制转移到位于固定用途ROM中内置的自举装载过程子程序。用来控制访问自举装载过程的配置位如下:
* SPE:系统编程使能位(1CDF.1)。该位被置1时,MAXQ2000在系统复位后,执行固定用途ROM中的自举装载子程序。
* PSS[l:0]:编程源选择(1CDE3-2)。这几位的设置决定了自举装载过程的通信使用JTAG端口(PSS[l:0]= =00b)还是串口0 UART(PSS[l:0]= =01b)。
一旦这些位被置位并且MAXQ2000从复位状态中释放,固定用途ROM的自举装载过程通过选定的端口(JTAG或串口0 UART)开始与主机系统通信。在这两种情况下,使用的协议相同,并且都提供如下函数:
* 读取MAXQ2000的ID标题(识别固定用途ROM
原创力文档


文档评论(0)