arm21312007-11-12 21:34:41閱讀85評(píng)論0 字號(hào):大中小 訂閱
JTAG是一個(gè)通信標(biāo)準(zhǔn),用于計(jì)算機(jī)和單片機(jī)進(jìn)行實(shí)時(shí)快速通訊。
AVR的JTAG功能(只有部分型號(hào)才有)使得AVR的調(diào)試工作非常簡單,可以通過JTAG 接口對(duì)Flash、EEPROM、熔絲位和鎖定位進(jìn)行編程。
使用AVR studio軟件和JTAG硬件( AVR JTAG編程器,AVRJTAG仿真器)可以進(jìn)行程序下載(編程)和程序在線調(diào)試。
JTAG接口有四個(gè)引腳。以JTAG的術(shù)語來說,這些引腳組成了測試訪問端口TAP。這些引腳是:
什么是ISP?
ISP是一種通用的程序下載方式,AVR單片機(jī)都有ISP下載接口。可以通過ISP下載線或者STK500把程序下載到單片機(jī)中。
ISP下載線成本低廉,制作簡單,一個(gè)并口ISP下載線只需幾十元即可得到。開發(fā)工具成本低也是AVR單片機(jī)的優(yōu)勢之一。
JTAG與ISP的區(qū)別和聯(lián)系
區(qū)別:JTAG可以調(diào)試程序,而ISP只能下載程序。
聯(lián)系:同作為AVR程序下載工具,都能把程序從電腦下載到單片機(jī)中。都能對(duì)芯片的熔絲位和鎖定位進(jìn)行編程。
JTAG調(diào)試與普通軟件仿真的區(qū)別和聯(lián)系
聯(lián)系:都可以在計(jì)算機(jī)調(diào)試程序終端看到程序的運(yùn)行效果,都可以設(shè)置斷點(diǎn),單步運(yùn)行,進(jìn)入循環(huán),跳出循環(huán),連續(xù)運(yùn)行等操作。還能實(shí)時(shí)觀察各寄存器的值,IO口狀態(tài)等。
區(qū)別:軟件仿真,用的是計(jì)算機(jī)來模仿單片機(jī)運(yùn)行,不是全真的環(huán)境,很多時(shí)候會(huì)出現(xiàn)偏差甚至錯(cuò)誤。而用JTAG在線調(diào)試,程序本身在單片機(jī)內(nèi)運(yùn)行,完全真實(shí)的硬件環(huán)境,更準(zhǔn)確的反映程序運(yùn)行的實(shí)際情況,有助于大型程序的調(diào)試。
關(guān)于JTAG仿真器,是針對(duì)某些特殊的單片機(jī)或CPU而言的。這類片子使用符合JTAG接口標(biāo)準(zhǔn)定義的數(shù)據(jù)線與數(shù)據(jù)時(shí)序來實(shí)現(xiàn)在線程序下載(ISP)或程序仿真。這種程序仿真有兩種形式。一種與傳統(tǒng)意義上的仿真器相似,但程序的運(yùn)行以及CPU資源的模擬在仿真器與目標(biāo)芯片中同時(shí)進(jìn)行。另一種仿真形式僅僅對(duì)數(shù)據(jù)進(jìn)行時(shí)序調(diào)制,具體的程序運(yùn)行與調(diào)試均在目標(biāo)芯片中進(jìn)行。二者比較而言,后者成本低,仿真器制作簡便但效率很低,占用芯片本身的資源多。而前者恰恰相反。據(jù)我觀察,常見的ARM仿真器如EASYARM,TI公司的MSP430單片機(jī)的仿真器,還有ALTERA的部分FPGA的JTAG都屬于后者。前者一般而言價(jià)格昂貴,很多XLINK的FPGA的JTAG仿真器就采用前者的結(jié)構(gòu),功能很強(qiáng)大。