ISP & JTAG 區(qū)別和聯(lián)系
在系統(tǒng)中編程,英文簡稱ISP,即In System Programming,這里的”系統(tǒng)”值的是電路系統(tǒng)。是 Lattice 半導(dǎo)體公司首先提出來的一種讓我們能在產(chǎn)品設(shè)計(jì)、制造過程中的每個(gè)環(huán)節(jié),甚至在產(chǎn)品賣給最終用戶以后,具有對其器件、電路板或整個(gè)電子系統(tǒng)的邏輯和功能隨時(shí)進(jìn)行重組或重新編程的技術(shù)。也就是說給芯片編程的時(shí)候不必將芯片移出其運(yùn)行的電路系統(tǒng)。無論在單片機(jī)上,還是在CPLD/FPGA上都得到了廣泛的應(yīng)用。
JTAG,即Joint Test Action Group,是 聯(lián)合測試行為組 提出的一種邊界掃描鏈的結(jié)構(gòu)。是一種國際標(biāo)準(zhǔn)測試協(xié)議(IEEE 1149.1兼容),JTAG主要用于邊界掃描測試芯片內(nèi)部信號(hào),但通過某種方式也可以實(shí)現(xiàn)編程,采用JTAG編程的方式其實(shí)芯片也不需要離開電路系統(tǒng)。
JTAG用來對芯片進(jìn)行測試的基本原理是在器件內(nèi)部定義一個(gè)TAP(Test Access Port:測試訪問口)通過專用的JTAG測試工具對內(nèi)部節(jié)點(diǎn)進(jìn)行測試。標(biāo)準(zhǔn)的JTAG接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時(shí)鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。
TMS:測試模式選擇。用來實(shí)現(xiàn)TAP控制器各個(gè)狀態(tài)之間的切換。
TCK:測試時(shí)鐘輸入。JTAG操作是與TCK同步的。
TDI:測試數(shù)據(jù)輸入。數(shù)據(jù)通過TDI輸入JTAG口。
TDO:測試數(shù)據(jù)輸出。數(shù)據(jù)通過TDO從JTAG口輸出
TRST:可選引腳,測試復(fù)位,輸入引腳,低電平有效,如果JTAG電路不用,可以將其連接到GND。
ISP一般指的是通過SPI接口進(jìn)行在系統(tǒng)中編程(ISP)。
JTAG則是通過JTAG接口進(jìn)行在系統(tǒng)中編程。
ISP:只能進(jìn)行程序的下載,程序下載速度慢。是一種通用的程序下載方式,所以AVR單片機(jī)均支持ISP程序下載。(并口ISP下載線、串口ISP下載線)
JTAG:可以進(jìn)行程序的下載和在線仿真調(diào)試,程序下載速度快?,F(xiàn)在多數(shù)的高級器件都支持JTAG,如CPU、DSP、CPLD、FPGA等)
ISP和JTAG都能把程序從電腦下載到單片機(jī)中,都能對芯片的熔絲位和鎖定位進(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)試。
LPC2103對應(yīng)的ISP引腳為P0.14。
硬件部分注意的地方:
JTAG信號(hào)比較多非常難調(diào)試,而ISP只需要兩個(gè)信號(hào),串口又是很熟悉的通信,所以ISP比較好調(diào)試。所以,在設(shè)計(jì)時(shí),應(yīng)該把P0.14引腳像開發(fā)板似的接一個(gè)跳線器,可以方便的使能ISP功能。
元器件焊接好后,先測下是否短路,然后用示波器測試一下復(fù)位信號(hào)和時(shí)鐘信號(hào)是否正常。如果復(fù)位信號(hào)和時(shí)鐘信號(hào)正常,表示LPC2103(ARM7TDMI-S)芯片焊接沒有問題,利用串口(RS-232)進(jìn)行ISP下載應(yīng)該就沒有問題。
ISP下載成功的話,說明LPC2103能夠正常工作的條件都滿足了,就可以進(jìn)行JTAG的調(diào)試了。