C8051F020 JTAG接口:Flash编程指南

需积分: 35 25 下载量 111 浏览量 更新于2024-08-01 收藏 689KB PDF 举报
本篇文档是新华龙电子有限公司提供的关于C8051F020微控制器的JTAG接口应用指南,由Silicon Laboratories Inc.编写。主要内容涵盖了C8051系列MCU(微控制器)的JTAG编程技术,包括硬件接口、间接寄存器操作以及具体的FLASH编程步骤。 JTAG接口是集成开发环境(Integrated Development Environment, IDE)中常用的一种调试接口,用于芯片级的程序下载和调试。C8051F020采用的是4脚物理层接口,包含TCK(时钟)、TMS(模式选择)、TDI(数据输入)和TDO(数据输出)线,这些线用于实现JTAG测试访问端口(TAP)的状态机通信。 首先,理解JTAG的基本操作至关重要,如TAP复位、指令寄存器扫描和数据寄存器扫描。TAP复位用于清除所有内部标志,恢复TAP到初始状态。指令寄存器扫描用于执行特定的JTAG命令,如读取或写入寄存器,而数据寄存器扫描则用来接收或发送数据。 在进行FLASH编程时,用户需要掌握以下操作: 1. 读取一个FLASH字节:通过JTAG接口读取指定地址的存储单元内容。 2. 写入一个FLASH字节:将数据写入到指定的FLASH地址,确保数据正确无误地存储。 3. 擦除一个FLASH页:清除指定页范围内的所有数据,为新数据写入做好准备。 4. 擦除整个FLASH:一次性清除整个非易失性存储区域,通常在重置系统或进行大范围更新时使用。 间接寄存器操作是JTAG编程中的关键环节,它允许程序员通过JTAG接口访问存储器的非直接地址空间,以控制和管理设备的工作状态。例如,可以通过间接读取或写入FLASH接口寄存器(如FLASHCON、FLASHDAT、FLASHADR和FLASHSCL)来控制程序的执行流程。 图1展示了通过JTAG端口进行FLASH编程的层次结构,清晰地展现了各个步骤之间的关系。最后,文档还推荐参考IEEE1149.1-1990标准,获取更全面的JTAG接口规范和原理。 这篇应用笔记为C8051F020的JTAG编程提供了详尽的指导,无论是初学者还是高级工程师,都能从中找到所需的信息来高效地进行MCU的开发和维护工作。