什么是JTAG?
JTAG是一个通信标准,用于计算机和单片机进行实时快速通讯。
AVR 的JTAG功能(只有部分型号才有)使得AVR的调试工作非常简单,可以通过JTAG 接口对Flash、EEPROM、熔丝位和锁定位进行编程。
使用AVR studio软件和JTAG硬件( AVR JTAG编程器,AVR JTAG仿真器)可以进行程序下载(编程)和程序在线调试。
JTAG接口有四个引脚。以JTAG的术语来说,这些引脚组成了测试访问端口TAP。这些引脚是:
- TMS:测试模式选择。此引脚用来实现TAP 控制器各个状态之间的切换。
- TCK:测试时钟。JTAG 操作是与TCK 同步的。
- TDI: 测试数据输入--需要移位到指令寄存器或数据寄存器(扫描链)的串行输入数据。
- TDO:测试数据输出-- 自指令寄存器或数据寄存器串行移出的数据。
什么是ISP?
ISP是一种通用的程序下载方式,AVR单片机都有ISP下载接口。可以通过ISP下载线或者STK500把程序下载到单片机中。
ISP下载线成本低廉,制作简单,一个并口ISP下载线只需几十元即可得到。开发工具成本低也是AVR单片机的优势之一。
JTAG与ISP的区别和联系
区别:JTAG可以调试程序,而ISP只能下载程序。
联系:同作为AVR程序下载工具,都能把程序从电脑下载到单片机中。都能对芯片的熔丝位和锁定位进行编程。
JTAG调试与普通软件仿真的区别和联系
联系:都可以在计算机调试程序终端看到程序的运行效果,都可以设置断点,单步运行,进入循环,跳出循环,连续运行等操作。还能实时观察各寄存器的值,IO口状态等。
区别:软件仿真,用的是计算机来模仿单片机运行,不是全真的环境,很多时候会出现偏差甚至错误。而用JTAG在线调试,程序本身在单片机内运行,完全真实的硬件环境,更准确的反映程序运行的实际情况,有助于大型程序的调试。
评论
发表评论