




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、利用互聯(lián)網(wǎng)的遠(yuǎn)程在系統(tǒng)編程 摘要:介紹了利用互聯(lián)網(wǎng)技術(shù)及其TCP/IP協(xié)議研制開發(fā)的遠(yuǎn)程在系統(tǒng)編程工具。使用該工具可對用PLD器件設(shè)計(jì)的電子系統(tǒng)、設(shè)備、消費(fèi)產(chǎn)品進(jìn)行遠(yuǎn)程監(jiān)控、調(diào)試或升級。該工具可供電子產(chǎn)品的研制生產(chǎn)使用,也可供開設(shè)遠(yuǎn)程數(shù)字邏輯電路課程、數(shù)字系統(tǒng)設(shè)計(jì)課程的學(xué)校使用。 1 問題的提出自二十世紀(jì)80年代以來,可編程邏輯器件(PLD)技術(shù)發(fā)展非常迅速。由于PLD是作為一種通用器件生產(chǎn)的,而它的邏輯功能是由用戶通過對器件編程實(shí)現(xiàn)的,隨著PLD的集成度越來越高,速度越來越快
2、,設(shè)計(jì)越來越方便靈活,因而日益成為專用集成電路ASIC設(shè)計(jì)的主流方法。特別是二十世紀(jì)90年代新一代在系統(tǒng)編程技術(shù)isp的推出,取消了專用編程設(shè)備,器件本身也不必從系統(tǒng)電路板上取下,便可以使用硬件描述語言和電路圖方法在系統(tǒng)內(nèi)編程。這一創(chuàng)舉使現(xiàn)代電子系統(tǒng)設(shè)計(jì)的方法前進(jìn)了一大步,設(shè)計(jì)周期大大縮短,效率大為提高,并且十分有利于產(chǎn)品的升級和更新?lián)Q代。一個(gè)數(shù)字系統(tǒng)的自動(dòng)設(shè)計(jì)流程,可以分為四個(gè)階段。首先是對系統(tǒng)的功能進(jìn)行,利用原理圖或硬件描述語言表達(dá)設(shè)計(jì)者的意圖;第二是步利4用仿真工具對設(shè)計(jì)者的想法進(jìn)行測試仿真,以便發(fā)現(xiàn)設(shè)計(jì)中的缺陷和錯(cuò)誤;第三步是將前兩步生成的文件進(jìn)行編譯并和具體器件相適配,生成具體芯片的
3、融絲圖文件;最后一步就是將融絲圖文件通過編程電纜下載到包含有PLD的設(shè)備中,從而實(shí)現(xiàn)一個(gè)物理的數(shù)字系統(tǒng),如圖1(a)所示。在這中個(gè)階段中,前三步都可對在計(jì)算機(jī)上使用不同軟件工具實(shí)現(xiàn),而最后一步必須和具體的設(shè)備進(jìn)行連接,這這意味著需要設(shè)計(jì)者新臨現(xiàn)場操作。設(shè)想如果產(chǎn)品發(fā)往外地,或是遠(yuǎn)涉重洋出口海外,就需要生成一個(gè)龐大的全球性售后服務(wù)網(wǎng)絡(luò)對產(chǎn)品跟蹤或更新,這對中小企業(yè)來說根本不可想象。如何解決這個(gè)問題呢?我們想到了無所不能的互聯(lián)網(wǎng)。既然中小企業(yè)的原材料供應(yīng)、成品銷售等可以受益于互聯(lián)網(wǎng),那么他們的技術(shù)性有服務(wù)為什么不可以通過互聯(lián)網(wǎng)進(jìn)行呢? 為此,我們利用互聯(lián)網(wǎng)及其TCP/IP協(xié)議開發(fā)研制了一個(gè)遠(yuǎn)程在系
4、統(tǒng)編程工具,使工程技術(shù)人員足不出戶就可以對他們利用PLD研制生產(chǎn)的遠(yuǎn)在千里之外的電子系統(tǒng)、電子設(shè)備進(jìn)行升級和維護(hù),如圖1(b)所示。2 系統(tǒng)結(jié)構(gòu)本工具采用了客戶服務(wù)器模式,由兩個(gè)部分組成。一個(gè)在用戶計(jì)算機(jī)上執(zhí)行,稱之為用戶端;另一個(gè)在設(shè)計(jì)者計(jì)算機(jī)上運(yùn)行,稱之為設(shè)計(jì)端。軟件編制使用C+語言,在C Builder環(huán)境下設(shè)計(jì)。程序中使用C Builder中提供的網(wǎng)絡(luò)通信控件,實(shí)現(xiàn)客戶和服務(wù)器之間通信。本工具程序框圖如見圖2。首先由用戶端將設(shè)備和計(jì)算機(jī)通過下載電纜(使用并行口)連接在一起,并啟動(dòng)計(jì)算機(jī)運(yùn)行用戶端程序。用戶要做的就是這些,這些操作不需要任何專業(yè)知識。用戶端程序也不需要什么配置,只要它自動(dòng)
5、掃描并發(fā)現(xiàn)接有設(shè)備端口,并對之操作即可。用戶端程序一旦運(yùn)行,設(shè)計(jì)端程序就可以啟動(dòng)。設(shè)計(jì)端首先輸入用戶端的IP地址,輸入不同的IP地址,就可以對不同的用戶端設(shè)備進(jìn)行操作。然后調(diào)入設(shè)計(jì)好的融絲圖文件,對文件的格式進(jìn)行檢查,顯示文件中的信息。文件中的信息指示該文件對哪些芯片編程,以及它們在設(shè)備中的排列順序。檢查正確后,就可以進(jìn)行網(wǎng)絡(luò)連接,并把文件內(nèi)容發(fā)送給用戶端。在用戶端將融絲圖下載到PLD芯片的過程中,用戶端應(yīng)用程序回送下載進(jìn)度給設(shè)計(jì)端,設(shè)計(jì)端就可以顯示下載進(jìn)度。如果一切正常,下載完畢后就關(guān)閉連接,結(jié)束通信。3 技術(shù)實(shí)現(xiàn)3.1 設(shè)計(jì)端設(shè)計(jì)端界面為一窗體,窗體上有一個(gè)命令菜單、一個(gè)編程控制(輸入或顯
6、示打開的文件路徑和文件名)、一個(gè)組合框(讓用戶選擇下載模式)、兩個(gè)顯示下載進(jìn)度和文件信息的備注控件,還有一個(gè)用于通信的客戶端套接字控件。設(shè)置IP地址,點(diǎn)擊“命令/設(shè)置”時(shí)會顯示一個(gè)模式對話框。用戶可以在“IP地址”編輯控制中輸入用戶端的IP地址,按“確定”該值將賦給客戶端套接字控件的屬性“Address”,進(jìn)行網(wǎng)絡(luò)連接時(shí),將與擁有該IP地址的主機(jī)。在“端口”編輯控制中輸入用戶端下載服務(wù)的TCP端口號,按“確定”將該值賦給套接字控件的屬性“Port”,進(jìn)行網(wǎng)絡(luò)連接時(shí),將與指定主機(jī)的服務(wù)端口通信。下載文件,直接在編輯控制中輸入文件名或點(diǎn)擊“打開文件”,通過對話框得到下載文件的路徑。每次選擇一個(gè)is
7、p文件,所謂isp文件,是將標(biāo)準(zhǔn)的融絲圖JED文件采用一定的壓縮算法生成的。它比標(biāo)準(zhǔn)的JED文件要小,這樣下載時(shí)速度要快些。為了能夠下載成功,要對文件格式和內(nèi)容進(jìn)行檢查。檢查依據(jù)的是isp文件的頭格式,包括文件類型、芯片鏈中芯片的個(gè)數(shù)、擦除脈沖寬度、編程脈沖寬度、編程行數(shù)、每行長度、芯片ID列表等。文件的第一個(gè)字節(jié)只要是(0xF8,0x0 B,0x0F,0x0A)中的一個(gè),則該文件就是isp文件,不同數(shù)值分別代表不同類型的芯片和壓縮類型。下載模式,文件選定后,必須選擇下載模式。共設(shè)四種模式:編程并校驗(yàn)、僅校驗(yàn)、僅校驗(yàn)UES、校驗(yàn)并顯示UES。其中UES是指存放在芯片中的用戶自定義信息,根據(jù)需要
8、可以是設(shè)備的序列號或設(shè)備的唯一標(biāo)識等信息,而與芯片的功能沒有關(guān)系。編程并校驗(yàn),是指將文件內(nèi)容下載到芯片中,并在下載過程中從芯片讀出下載內(nèi)容,檢驗(yàn)是否下載正確。僅校驗(yàn),是指讀出芯片中的內(nèi)容,并與文件內(nèi)容進(jìn)行比較,校驗(yàn)兩者是否一致。校驗(yàn)并顯示UES,是指把文件中的UES信息與芯片中的UES內(nèi)容進(jìn)行比較,檢驗(yàn)兩者是否一致。若一致,則顯示UES內(nèi)容,否則提示校驗(yàn)錯(cuò)誤。下載模式選定后,就可以進(jìn)行網(wǎng)絡(luò)連接了。選擇菜單“命令/u36830連接”,調(diào)用網(wǎng)絡(luò)連接的代碼。一旦連接成功,系統(tǒng)會發(fā) 連接成功“CONNECTED”消息。收到此消息后,程序會在此連接上發(fā)送一個(gè)雙字。若該值為1,則表示將發(fā)送一個(gè)文件,否則表
9、示雙方可以用鍵盤進(jìn)行對話。如果沒有選擇下載文件,將自動(dòng)進(jìn)入對高血壓狀態(tài)。若是對話狀態(tài),雙方可在窗體右邊的備注控件中輸入對話內(nèi)容,按回車鍵就會發(fā)送輸入內(nèi)容。若是下載狀態(tài),緊接著會發(fā)送一個(gè)雙字,表示下載模式。然后會再發(fā)送一個(gè)雙字,表示文件的長度,最后發(fā)送整個(gè)文件內(nèi)容。用戶端收到全部內(nèi)容后,開始下載。下載過程中用戶端把下載進(jìn)度發(fā)送給設(shè)計(jì)端,設(shè)計(jì)端收到后,將顯示收到的內(nèi)容。這樣,設(shè)計(jì)者就會看到下載進(jìn)度。下載結(jié)束后,自動(dòng)進(jìn)入對話狀態(tài)。如果用戶端有人,雙方可以進(jìn)行簡短對話,討論一些技術(shù)問題。 運(yùn)行“命令/u26029斷開”,則關(guān)斷網(wǎng)絡(luò)連接,結(jié)束本次下載過程。新的下載過程
10、只要重新運(yùn)行“命令/u36830連接”即可。3.2 用戶端用戶端窗體上有一個(gè)進(jìn)度條(顯示下載進(jìn)度)和兩個(gè)備注控件(顯示當(dāng)前用戶的工作狀態(tài),以及交談時(shí)的輸入輸出)。用戶端需要完成的功能比設(shè)計(jì)端復(fù)雜。主要有數(shù)據(jù)的接收、設(shè)備的自動(dòng)識別、具體的下載過程等。程序運(yùn)行后,在收到窗體創(chuàng)建消息時(shí),將激活服務(wù)器套接字,并和TCP端口綁定,等待設(shè)計(jì)端進(jìn)程的連接。只要運(yùn)行設(shè)計(jì)端“命令/u36830連接”,就會在用戶端產(chǎn)生網(wǎng)絡(luò)連接的消息。連接成功后,與設(shè)計(jì)端對應(yīng),收到的第一個(gè)雙字,代表本次連接是下載狀態(tài)還是對話狀態(tài)。若是1,則為下載,否則進(jìn)入對話狀態(tài)。若是對話狀態(tài),直接在備注控件中輸入對話內(nèi)容,按回車鍵即可??煞降恼?/p>
11、話會在另一個(gè)備注控件中顯示出來。若是下載文件(這是最常用的狀態(tài)),緊接著會收到一個(gè)雙字,代表下載模式(具體含義見前)。然后會再收到一個(gè)雙字,代表將要下載的文件長度。若該值小于等于零,或等于0Xffffffff(計(jì)算機(jī)中的-1),則提示發(fā)送方有錯(cuò),并關(guān)閉本次連接,否則將會接收全部文件內(nèi)容。文件的結(jié)束是靠文件長度與收到字節(jié)數(shù)進(jìn)行比較,相等表示全部收到。全部收到后,即進(jìn)行下載。編程電纜,下載過程與硬件密切相關(guān),我們使用編程電纜(共8根線,使用其中的7根)與并行口連接。每個(gè)并行口有三個(gè)端口:數(shù)據(jù)、狀態(tài)、控制端口,每個(gè)端口占一個(gè)字節(jié)。具體定義如下:端口.位 PC并行口腳號 信號名 數(shù)據(jù)流向 芯片引腳數(shù)據(jù)
12、.0 2 out_SDI SDI數(shù)據(jù).1 3 out_SCLK SCLK數(shù)據(jù).2 4 out_MODE MODE數(shù)據(jù).3 5 out_ISP ispEN數(shù)據(jù).6 8 out_SENSE_CABLE_OUT狀態(tài).6 10 in_SDO SDO狀態(tài).5 12 in_CABLE_SENSE_IN狀態(tài).3 15 in_VCC_OK VCC20 GND - GND在電纜內(nèi)部將并行口的8腳與12腳直接連接,用于檢測電纜是否已插到并行口上。向數(shù)據(jù)端口的第6位寫數(shù)據(jù),再從狀態(tài)端口第5位讀入數(shù)據(jù),比較兩者是否一致,即可得知下載電纜是否連接。圖3給出了編程電纜及接插件的端口定義。
13、; 其它信號的含義及作用如下:out_SDI 將isp數(shù)據(jù)從此腳串行輸出到芯片上;out_SCLK 控制下載過程的時(shí)鐘信號;out_MODE 將isp命令從此腳串行輸出到芯片上;out_ISP 控制芯片在正常工作模式和編程模式之間切換;in_SDO 從芯片上串行讀出isp數(shù)據(jù);in_VCC_OK 用于檢測設(shè)備電源是否打開。下載的流程圖見圖4。下載開始首先掃描三個(gè)并行口端口。利用信號in_CABLE_SENSE_IN和in_VCC_OK檢測設(shè)備是否和計(jì)算機(jī)連接以及電源是否打開,兩個(gè)信號同時(shí)有,則表示該端口連接有設(shè)備。如果找不到設(shè)備,就給出提示并口斷這次下載過程。再檢查文件的類型,看設(shè)計(jì)端發(fā)送來的
14、文件是否為合法的isp文件。否則給出提示并中斷這次下載過程。若合法,則著讀出被編程芯片的編程、擦除時(shí)間以及編程行數(shù)等信息。其中編程和擦除時(shí)間的控制,是利用多媒體定時(shí)器實(shí)現(xiàn)的,可以實(shí)現(xiàn)準(zhǔn)確的脈沖延遲,保證擦除、編程的可靠性。隨后從芯片中讀出該設(shè)備中含有的芯片ID列表(ID列表與芯片型號有關(guān)),并與設(shè)計(jì)端的值進(jìn)行比較。若一致可以繼續(xù)下載;否則給出提示并中斷本次下載過程。因?yàn)樾酒斜聿灰恢?,將?dǎo)致設(shè)備根本不能工作。下載時(shí),通過out_SDI端將數(shù)據(jù)一個(gè)比特一個(gè)比特地串行輸出到芯片中,并從SDO端讀出剛寫入芯片的數(shù)據(jù),與文件中應(yīng)寫入的數(shù)據(jù)進(jìn)行比較校驗(yàn),以保證數(shù)據(jù)準(zhǔn)確地寫入到芯片中。4 出錯(cuò)處理錯(cuò)誤的處理是軟件設(shè)計(jì)中十分重要的一個(gè)方面,本軟件同樣充分考慮各種意外和錯(cuò)誤,使得錯(cuò)誤的影響得到很好控制。本軟件中最主要的出錯(cuò)處理就是對網(wǎng)絡(luò)錯(cuò)誤的處理,如設(shè)計(jì)端用戶輸入的IP地址或端口號不正確等。另外
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 大學(xué)語文基礎(chǔ)知識試題及答案
- 行政管理專業(yè)語文測試要求試題及答案
- 行政管理專科經(jīng)濟(jì)法考試必考試題及答案
- 行政法學(xué)學(xué)習(xí)路徑與試題寶典
- 自考行政管理的新觀點(diǎn)試題及答案
- 行政法學(xué)考試重點(diǎn)試題分析與答案
- 經(jīng)濟(jì)法考試重點(diǎn)知識與試題及答案
- 執(zhí)業(yè)藥師考試模擬試卷解析試題及答案
- 行政處罰合法性評估試題及答案
- 區(qū)塊鏈技術(shù)在金融領(lǐng)域的應(yīng)用及風(fēng)險(xiǎn)防范
- 安徽省合肥市瑤海區(qū)第三十八中學(xué)2023-2024學(xué)年八年級下學(xué)期期末語文試題(解析版)
- 2024年四川省成都市中考英語試卷(含官方答案)
- 交通運(yùn)輸安全風(fēng)險(xiǎn)評估
- 互聯(lián)網(wǎng)技術(shù)支持的新型健康管理模式對慢病人群的應(yīng)用研究
- FZT 74005-2016 針織瑜伽服行業(yè)標(biāo)準(zhǔn)
- 2024年湖北省武漢市高考數(shù)學(xué)一調(diào)試卷
- 愿站成一棵樹金波
- 2022年10月自考00372公安信息學(xué)試題及答案含解析
- 脫貧攻堅(jiān)戰(zhàn)在2024年取得全面勝利
- 高中音樂 人音版《音樂鑒賞》家國情懷的民族樂派(單元教學(xué)設(shè)計(jì))
- GB/T 43701-2024滑雪場地滑雪道安全防護(hù)規(guī)范
評論
0/150
提交評論