www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]下載電纜被廣泛應(yīng)用于電子系統(tǒng)設(shè)計與調(diào)試過程中

    摘要:下載電纜被廣泛應(yīng)用于電子系統(tǒng)設(shè)計與調(diào)試過程中。本文介紹它的基本原理和編程控制方法;針對目前單片機的ISP串行編程模式列舉實例,簡要介紹AT89S5X的串行編程的方法和部分協(xié)議,使用VC編程,應(yīng)用下載電纜實現(xiàn)對AT89S5X系列單片機的ISP編程;文末提出統(tǒng)一下載電纜硬件或軟件的設(shè)想,并提供可以下載支持多種單片機ISP編程軟件的網(wǎng)址。

    關(guān)鍵詞:下載電纜 串行編程 AT89S5X ISP

引言

隨著電子技術(shù)的日益發(fā)展,芯片的規(guī)模越來越大,封裝日趨小型化,相應(yīng)的對系統(tǒng)板級調(diào)試困難也在加大。IEEE制定了標準測試端口與邊界掃描的標準IEEE std 1149.1,這就是JTAG接口協(xié)議。JTAG接口通過TCK、TDI、TDO、TMS四根信號線,以串行模式為系統(tǒng)提供了對復(fù)雜芯片的各引腳連通性測試,進步還能實現(xiàn)對可編程芯片的配置與處理器芯片的調(diào)試等等。下載電纜就是一種使用計算機的并行端口通過軟件的仿零點實現(xiàn)JTAG接口協(xié)議,訪問可編程芯片的廉價工具。本文使用的下載電纜是Altera公司為其可編程邏輯器件開發(fā)的ByteBlasterMV電纜。ISP(在系統(tǒng)可編程的簡稱)是最先由Lattice公司提出的一種技術(shù),是通過同步串行方式實現(xiàn)對其可編程邏輯器件的重配置。ISP與JTAG的接口協(xié)議很相像,只是后者形成了標準。ISP現(xiàn)在已經(jīng)成為一種概念,它的提出改變了傳統(tǒng)硬件系統(tǒng)開發(fā)的流程,大大方便了開發(fā)者,加快了開發(fā)速度。現(xiàn)在大多數(shù)的可編程器件(FPGA、CPLD、DSP、MCU……)都支持ISP特性。單片機也不例外,Atmel公司推出的AT89S系列51單片機也符合ISP特性。

1 下載電纜的硬件

要實現(xiàn)JTAG接口協(xié)議可以使用專用的IC,如74LVT8980、74LVT8990,它與MCU配合可以提供高速的JTAG串行訪問,成本較高。下載電纜則是實現(xiàn)JTAG接口協(xié)議的廉價方案。它僅命名用74HC244做線路驅(qū)動,由計算機的并行端口引出I/O作為TCK、TDI、TDO、TMS等信號線。由于并口在SPP模式下共有3個端口——數(shù)據(jù)輸出端口、控制輸出端口、狀態(tài)輸入端口,各種下載電纜究竟從那個端口引出JTAG信號線幾乎都不相同,圖1、圖2是兩種下載電纜的原理圖。

并口簡介:

計算機的并行端口工作在SPP模式下,對它的控制是通過數(shù)據(jù)輸出端口、控制輸出端口、狀態(tài)輸入端口來實現(xiàn)的。

并行口有25個引腳,其中包括8位數(shù)據(jù)線、5位狀態(tài)線、4位控制線。

數(shù)據(jù)端口(378H):D0~D7用于數(shù)據(jù)輸出。

狀態(tài)端口(379H):*S7(Busy)、S6(nAck)、S5(PE)、S4(Select)、S3(nError)。

控制端口(37AH):*C3(nSelin)、S2(nInit)、*C(AnutoFeed)、*C0(nStrobe)。

()(端口地址是缺省的LPT1設(shè)置;*表示此引腳有反向器)

表1為并行端口定義。對應(yīng)原理圖有:

Altera的下載電纜

TCK、TDI、TMS、TDO分別對應(yīng)D0、D6、D1、*S7;

Atmel的電纜

TCK、TDI、TMS、TDO分別對應(yīng)*C0、D0、*C3、S6。

表1 并行端口定義表

引腳號 名   稱 數(shù)據(jù)位
1 nStrobe *C0
2 D0 D0
3 D1 D1
4 D2 D2
5 D3 D3
6 D4 D4
7 D5 D5
8 D6 D6
9 D7 D7
10 nAck S6
11 Busy *S7
12 PE S5
13 Select S4
14 Auto Feed *C1
15 nError S3
16 nInit C2
17 nSelin *C3
18~25 GND GND

2 下載電纜的編程方法

用計算機控制下載電纜實現(xiàn)JTAG協(xié)議,就是對并口3個I/O端口的讀寫操作,用0-1的變化來模擬JTAG時序。在Win98和Win2000環(huán)境下讀寫I/O,需要驅(qū)動程序。本文使用DriverLINX Port I/O Driver(可以從WWW.sstnet.com下載)來實現(xiàn)I/O端口訪問。安裝DLPORTIO以后,通過調(diào)用DLPORTIO.DLL動態(tài)連接庫中的

UCHAR DLPORT_API D1PortRead PortUchar(IN ULONG Port);

    VOID DLPORT_API D1PortWrite PortUchar(IN ULONG Port,IN UCHAR Value);兩個函數(shù)就可以訪問位于378H、379H、37AH(這是缺省的LPT1設(shè)置)的3個并口I/O端口。程序段1實現(xiàn)了對Altera下載電纜的一次電平賦值:

程序段1

Altera下載電纜電平賦值函數(shù)

Void CAvrISPDlg::Setbit(){

Unsigned char value=0;

If(!m_tck)value|=0x01;

If(!m_tms)value|=0x02;

If(!m_tdi)value|=0x40;

DlPortWritePortUchar(0x378,value);

Value=DlPortReadPortUchar(0x379);

If(value & 0x80)m_tdo=0;

Else m_tdo=0;

}

通過以上程序依次改變JTAG各接口I/O的電平狀態(tài),模擬JTAG協(xié)議的時序,就可以訪問支持JTAG標準的各種芯片。

3 ISP協(xié)議的解析與實現(xiàn)

對AT89S5X系列單片機ISP編程不使用JTAG協(xié)議,而使用SPI同步串行接口協(xié)議,如圖3所示。

    針針這種8位SPI接口協(xié)議,我們使用數(shù)組來模擬時序:

時鐘信號固定為unsigned char sck[19]={0,0,1,0,1,0,1,0,1,0,10,1,0,1,0,1,0,1,0,0};

輸出的數(shù)據(jù)信號由程序?qū)崿F(xiàn)情況自動生成數(shù)組unsigned char mosi[19];

輸入的數(shù)據(jù)根據(jù)讀入的信號生成數(shù)組unsigned char miso[19];

再調(diào)用上文的Setbit()函數(shù),依次發(fā)送19位的JTAG接口I/O狀態(tài),同時讀入返回信號,即完成一次對AT89S5X芯片的SPI單字節(jié)訪問。

在單字節(jié)訪問基礎(chǔ)上,參考Atmel公司的AT89S5X數(shù)據(jù)手冊的串行編程指令表中的指令格式,就可以實現(xiàn)ISP了。

表2為AT89S51串行編程指令表。

表2 AT89S51串行編程指令集

指  令 指  令  模  式 說  明
第1字節(jié) 第2字節(jié) 第3字節(jié) 第4字節(jié)
編程使能 10101100 01010011 XXXXXXXX XXXXXXXX 使能串行編程
芯片擦除 10101100 100XXXXX XXXXXXXX XXXXXXXX 擦除程序存儲順
讀程序字節(jié) 00100000 XXXXA11~A8 A7~A0 D7~D0 字節(jié)模式讀程序
寫程序字節(jié) 01000000 XXXXA11~A8 A7~A0 D7~D0 字節(jié)模式寫程序
寫保護位 10101100 111000B1B2 XXXXXXXX XXXXXXXX 寫保護位
讀保護位 00100100 XXXXXXXX XXXXXXXX XXLB3~LB1XX 讀當前保護位
讀標志字節(jié) 00101000 XXXA5~A1 A0XXXXXX 標志數(shù)據(jù) 讀取標志數(shù)據(jù)
讀程序頁 00110000 XXXXA11~A8 數(shù)據(jù)0 數(shù)據(jù)1…255 頁模式讀程序
寫程序?qū)?/TD> 01010000 XXXXA11~A8 數(shù)據(jù)0 數(shù)據(jù)1…255 頁模式寫程序

注:①串行編程要在RST端接高電平情況下實現(xiàn);②X表示此位關(guān)心;③A11~A0是要訪問字節(jié)地址;④D7~D0是讀寫的數(shù)據(jù);⑤B1、B2是保護位;⑥LB3~LB1表示3種狀態(tài)。

針對AT89S51單片機,其標志字節(jié)為:(00H)1EH、(02H)51H、(04)06H.

程序段2將得到AT89S51單片機的標志字節(jié)。(其中SPIcomm()為SPI單字節(jié)訪問函數(shù))。

程序段2

獲得AT89S51單片機標志字節(jié)的程序段

CString str;

for(addr=1;addr<3;addr++){

m_comm=0x28;

SPIcomm();

m_comm=addr;

SPIcomm();

m_comm=0;

SPIcomm();

m_comm=0;

SPIcomm();

Str.Format(“0x%02X”,m_dat);

m_out+=str;

}

圖4是AT89S51進行串行編程時的硬件原理圖。

4 小結(jié)

下載電纜為我們提供了深入芯片內(nèi)部的觸手。通過JTAG標準協(xié)議,我們可以用下載電纜檢查芯片焊接連通性、重新配置可編程器件、下載程序固件以及調(diào)試處理器的運行。

小到8位單片機AT89S5X、AVR的串行編程,可編程器件MAX7000的配置;大到32位嵌入式處理器的調(diào)試,上萬門FPGA芯片的配置都可以見到下載電纜的身影。例如,ARM使用下載電纜的JTAG仿真可以通過EmbeddedICE接口實現(xiàn)對ARM的開發(fā)調(diào)試,或者使用ARM的邊界掃描特性為嵌入式系統(tǒng)板下載啟動程序等等。

目前下載電纜的使用越來越多,各個廠商分別推出了自已的符合JTAG標準的芯片或者是使用ISP技術(shù)的新產(chǎn)品。與此同時,下載電纜的種類也非常多,大多數(shù)的區(qū)別僅在于并口信號與JTAG信號的對應(yīng)關(guān)系不同。往往有時候開發(fā)一個產(chǎn)品,要用到很多種不同的電纜。我們希望可以使用一種標準的下載電纜來實現(xiàn)所有JTAG應(yīng)用;或者是通過一個計算機程序可以通過配置文件來使用各種下載電纜。在我們的BLMVISP軟件中,就支持了現(xiàn)有的兩種電纜。

使用ISP技術(shù)可以大大加快硬件開發(fā)速度。下載電纜與計算機軟件的配合使用也可以降低開發(fā)成本,非常適合個人愛好者與初學(xué)者使用。

有興趣的讀者可以下載BLMVISP演示版的VC源程序壓縮包(demo_blmvisp.zip),以便參考;也可以訪問:http://51kaifa.nease.net或者email:blmv@eyou.com。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在嵌入式系統(tǒng)開發(fā)中,程序燒錄是連接軟件設(shè)計與硬件實現(xiàn)的關(guān)鍵環(huán)節(jié)。當前主流的單片機燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對應(yīng)開發(fā)調(diào)試、量產(chǎn)燒錄、遠程升級等不同場景。...

關(guān)鍵字: 單片機 ISP ICP IAP 嵌入式系統(tǒng)開發(fā)

本文中,小編將對PLC予以介紹,如果你想對它的詳細情況有所認識,或者想要增進對它的了解程度,不妨請看以下內(nèi)容哦。

關(guān)鍵字: PLC 編程

在下述的內(nèi)容中,小編將會對PLC的相關(guān)消息予以報道,如果PLC是您想要了解的焦點之一,不妨和小編共同閱讀這篇文章哦。

關(guān)鍵字: PLC 編程 模塊化

-Cognizant正在籌辦全球最大規(guī)模的氛圍編程活動,以提升數(shù)千名員工的AI素養(yǎng) 為抓住人工智能經(jīng)濟將創(chuàng)造的巨大機遇,Cognizant與Lovable、Windsurf、Cursor、Gemini Code Ass...

關(guān)鍵字: 編程 NI AN PI

上海 2025年6月23日 /美通社/ -- 日前,以"匯聚?連接?創(chuàng)造"為主題的2025世界移動通信大會(MWC)上海拉開帷幕。大會期間,愛立信專家圍繞"5G-A","...

關(guān)鍵字: 愛立信 編程 網(wǎng)絡(luò) AI

?在極低光照環(huán)境下顯著提升圖像質(zhì)量,超越傳統(tǒng)計算機視覺技術(shù)。

關(guān)鍵字: AI ISP

北京2025年3月6日 /美通社/ -- 2025世界移動通信大會(MWC25)期間,愛立信的5G可編程網(wǎng)絡(luò)榮獲"GTI年度大獎—移動技術(shù)創(chuàng)新突破獎"。此次獲獎,標志著愛立信的5G可編程網(wǎng)絡(luò)獲得了GT...

關(guān)鍵字: 網(wǎng)絡(luò) 愛立信 編程 TI

北京2025年3月4日 /美通社/ -- 日前,愛立信總裁兼首席執(zhí)行官鮑毅康(Börje Ekholm)在巴塞羅那舉行的2025年世界移動通信大會(MWC)上表示,移動連接將在實現(xiàn)人工智能(AI)和云技術(shù)能力方...

關(guān)鍵字: 愛立信 API AD 編程

上海2025年2月20日 /美通社/ -- 新品亮點 產(chǎn)品豐富:5個系列,9款產(chǎn)品,工作距離覆蓋300~3000mm 性能出眾:采集時間0.3s,不懼反光,精度最高0.03mm@300mm 應(yīng)用廣泛:支...

關(guān)鍵字: 3D視覺 相機 編程 機器人系統(tǒng)

防御性編程是指一種預(yù)見代碼可能出現(xiàn)問題并提前采取措施來防止這些問題發(fā)生的編程風格。在前端開發(fā)中,這尤其重要,因為你的代碼直接與用戶交互,任何錯誤都可能導(dǎo)致糟糕的用戶體驗,甚至安全漏洞。

關(guān)鍵字: 代碼 編程
關(guān)閉
關(guān)閉