版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、24《測控技術(shù)2005年第24卷第8期采用PDIUSBDl2實(shí)現(xiàn)USB高速數(shù)據(jù)傳輸張明,金寧德,趙鑫(天津大學(xué)電氣與自動(dòng)化工程學(xué)院,天津300072)摘要:在電導(dǎo)式油水兩相流測量系統(tǒng)的設(shè)計(jì)過程中,為滿足數(shù)據(jù)量大、傳輸速率高的設(shè)計(jì)要求,選用了飛利浦公司的USB固件PDIUSBDl2以實(shí)現(xiàn)基于USB總線的高速數(shù)據(jù)傳輸。簡單介紹了USB通信協(xié)議和PDIUSBDl2固件的特點(diǎn),詳細(xì)介紹了采用89C58單片機(jī)結(jié)合PDIUSBDl2實(shí)現(xiàn)USB數(shù)據(jù)傳
2、輸?shù)挠布O(shè)計(jì),對(duì)固件編程的具體實(shí)現(xiàn)給出了詳細(xì)說明。關(guān)鍵詞:USB;PDIUSBDl2;單片機(jī);固件編程中圖分類號(hào):TP336文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1000—8829(2005)08—0024—04USBBusHighSpeedDataTransferUsingPDIUSBDl2ZHANGMing,JINNing—de,ZHAOXin(SchoolofElectricalEngineering&Automation,TianjinUni
3、versity,Tianjin300072,China)Abstract:Intheoilwatertwophasemeasurementsystem,forobtainingofhigh—speedmassdatatransfer,theUSBbusischoosedandrealizedwithPDIUSBDl2whichisproducedbyPhilipscompanyTheprotocolofUSBandthecharacte
4、risticofPDIUSBDl2areintroducedbrieflyThen,thehardwaredesignusing89C58microcon—trollerandPDIUSBDl2toachieveUSBdatatransferiscarriedoutAtlast,thefirewareprogramdesignisin—troducedindetailKeywords:USB;PDIUSBDl2;microcontrol
5、ler;firewareprogrammingUSB(universalserialbus)總線協(xié)議(11版)是在1996年由Intel等7家公司共同制定的串行接口標(biāo)準(zhǔn),它可把多達(dá)127個(gè)外設(shè)同時(shí)連接到系統(tǒng)上,所有的外設(shè)通過協(xié)議來共享USB的12Mb/s帶寬,并允許外設(shè)在主機(jī)和其他外設(shè)工作時(shí)進(jìn)行連接、配置、使用及移除,即支持所謂的即插即用o。由于USB總線的這些特點(diǎn),考慮到在油水兩相流測量過程中傳感器信號(hào)數(shù)據(jù)量大,且欲實(shí)現(xiàn)兩相流動(dòng)態(tài)監(jiān)測
6、要求較高的傳輸速率,同時(shí)考慮到與原有測井計(jì)算機(jī)的方便連接,筆者采用USB總線作為測量采集系統(tǒng)的數(shù)據(jù)通信接口,以滿足油井兩相流數(shù)據(jù)采集系統(tǒng)大數(shù)據(jù)量高速傳輸?shù)囊蟆?采用USB固件PDIUSBDl2實(shí)現(xiàn)USB高速通信目前應(yīng)用中,實(shí)現(xiàn)USB數(shù)據(jù)傳輸?shù)姆桨赣卸喾N,收稿日期:2005—03—15基金項(xiàng)目:國家自然科學(xué)基金項(xiàng)目(60374041);教育部留學(xué)回國人員科研啟動(dòng)基金項(xiàng)目作者簡介:張明(1981一),男,遼寧省錦州人,碩士研究生;金寧德(
7、1963~),男,朝鮮族,黑龍江省東寧縣人,博士,教授,博士生導(dǎo)師,主要研究方向?yàn)橄冗M(jìn)傳感技術(shù)與現(xiàn)代信息處理技術(shù)融合;趙鑫(1978一),男,河北保定人,博士研究生。如采用Cypress公司的EZ—USB1或采用EDA技術(shù)口。開發(fā)自己的USB通信控制模塊。然而前者需要昂貴的開發(fā)系統(tǒng),后者開發(fā)周期長難度較大,所以筆者選擇采用MCU結(jié)合固件口。1(PDIUSBDl2)形式實(shí)現(xiàn)USB數(shù)據(jù)傳輸,它不但形式靈活,編程簡潔而且成本低廉。11PDIU
8、SBDl2的特點(diǎn)一。PDIUSBDl2(以下簡稱D12)是飛利浦公司推出的一款高性價(jià)比的USB固件,完全符合USB(11版)的協(xié)議規(guī)范,自帶并行接口可與多種微控制器相結(jié)合。另外它還支持本地的DMA傳輸,為微控制系統(tǒng)與Pc機(jī)進(jìn)行大規(guī)模數(shù)據(jù)傳輸提供了便利條件。D12所具有的掛起低功耗功能,可以滿足USB電源管理的要求,可使其應(yīng)用于使用總線供電的外部設(shè)備。此外,它還集成了內(nèi)部上拉電阻(用于軟件控制總線的開關(guān))、連通指示等功能。D12有3個(gè)端點(diǎn)
9、,其中2、3端點(diǎn)可通過SetMode命令配置為4種不同的模式,如表1所示。在表l所示的傳輸模式中,同步輸人、輸出模式適用于音頻傳輸?shù)纫笸叫暂^好的數(shù)據(jù)傳輸情況,但不對(duì)傳輸過程中的錯(cuò)誤進(jìn)行糾正,考慮到對(duì)試驗(yàn)數(shù)據(jù)正確傳輸?shù)囊?,筆者選擇模式0這種非同步傳輸模式。12PDIUSBDl2的工作方式萬方數(shù)據(jù)26《測控技術(shù)))2005年第24卷第8期用過向D12發(fā)送0xFD命令觀察讀回的字是否為0x1210來判斷。接下來,分別讀取中斷寄存器和每個(gè)
10、端點(diǎn)的最后狀態(tài)寄存器(1aststatusregister),完成以上工作之后,中斷管腳就會(huì)變?yōu)闊o效狀態(tài),表明初始化工作完成。中斷服務(wù)程序在整個(gè)程序體中十分重要,相對(duì)也比較復(fù)雜,它負(fù)責(zé)修改標(biāo)志變量聯(lián)合體EPPFLAGS和填充控制結(jié)構(gòu)體CONTROL_XFER(如表2、表3所示)的值,以便主循環(huán)程序能根據(jù)EPPFLAGS中標(biāo)志變量的變化來執(zhí)行具體的程序。表2EPPFLAGS聯(lián)合體主要成員變量及含義成員變量含義成員變量含義bus_reset
11、總線復(fù)位標(biāo)志in~isrUSB中斷服務(wù)標(biāo)志suspend掛起改變標(biāo)志controlstate控制端點(diǎn)狀態(tài)標(biāo)志setup_packet收到setup包標(biāo)志表3CONTROL_XFER結(jié)構(gòu)體主要成員變量及含義成員變量含義OeviceRequestUSB設(shè)備請(qǐng)求結(jié)構(gòu)體,8BwkⅡgt1傳輸數(shù)據(jù)的總字節(jié)數(shù)wCount傳輸字節(jié)數(shù)統(tǒng)計(jì)pData傳輸數(shù)據(jù)的指針DataBuffer[MAX—CONTROLDATA_SIZE]請(qǐng)求的數(shù)據(jù)21中斷服務(wù)程序的
12、程序框架中斷服務(wù)程序的程序框架如圖3所示。在MCU(上接第17頁)⑦關(guān)閉串口設(shè)備句柄函數(shù):CloseHandle();⑧消息響應(yīng)函數(shù):在視圖類中實(shí)現(xiàn)數(shù)據(jù)的讀取、數(shù)據(jù)分析、數(shù)據(jù)庫添加記錄、記錄顯示。具體流程如圖3所示,Windows程序基本由函數(shù)調(diào)用組成,這里的流程只是描述視圖類消息處理與數(shù)據(jù)處理部分。4結(jié)束語本文介紹了大容量數(shù)據(jù)采集系統(tǒng)的系統(tǒng)組成、軟件編程方法。特別是VC60下使用ODBC實(shí)現(xiàn)對(duì)VFP數(shù)據(jù)庫操作,以及串口通信的實(shí)現(xiàn)。并采
13、用較強(qiáng)的掉電保護(hù)和軟件容錯(cuò)能力,系統(tǒng)正常工作多年。參考文獻(xiàn):[1]謝勇VisualC60實(shí)例精通[M]北京:科學(xué)出版社,200005[2]李華MCS51系列單片機(jī)實(shí)用接口技術(shù)[M]北京:北京航空航天大學(xué)出版社,199308[3]陳堅(jiān),孫志月MODEM通信編程技術(shù)[M]西安:西安電子科技大學(xué)出版社,199907[4]北京愛立信通信系統(tǒng)有限公司MDll0程控交換機(jī)——用戶分機(jī)功能[Z]1996—10口量設(shè)置總線1Y妙‘N念!醫(yī)贏i磊磊傳輻右
14、蓑—蘭一DMA傳輸技術(shù)處理墅!瘩—叫型竺皇竺蘭塑竺蘭南4箝話——!叫控制端點(diǎn)接收數(shù)據(jù)處理苫l箝志——羔一端點(diǎn)1發(fā)送數(shù)據(jù)處理贏l霜證p_一端點(diǎn)1接收數(shù)據(jù)處理贏2翥醚——蘭一端點(diǎn)2發(fā)送數(shù)據(jù)處理萼掣P竺皇!蘭堅(jiān)蘭望竺竺中斷服務(wù)程序結(jié)束圖3中斷服務(wù)程序框圖收到中斷信號(hào)以后轉(zhuǎn)入此程序中,MCU讀取D12的中斷服務(wù)寄存器,將其中的內(nèi)容與EPPFLAGS聯(lián)合體的主要成員變量逐一比對(duì),然后修改對(duì)應(yīng)的變量并執(zhí)行相應(yīng)的程序。如圖3所示,在程序中,對(duì)于總線復(fù)
15、位和掛起改變只修改其相應(yīng)的標(biāo)志位,具體的處理過程在主循環(huán)程序中完成。控制輸入、控制輸出等其他標(biāo)志變化還需要執(zhí)行相應(yīng)的程序。22MCU中斷服務(wù)程序的控制輸入過程對(duì)于控制輸入過程,程序主要完成對(duì)USB協(xié)議中的請(qǐng)求描述符的讀取,即標(biāo)準(zhǔn)請(qǐng)求和廠商請(qǐng)求。D12會(huì)根據(jù)收到的標(biāo)記包填充中斷標(biāo)志寄存器并等待主機(jī)下一步操作的到來。以setup包為例,D12一旦接收到主機(jī)的請(qǐng)求描述符,立即將其存儲(chǔ)在控制端點(diǎn)的FIFO之中,向主機(jī)發(fā)送設(shè)備應(yīng)答(ACK)并對(duì)M
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 面向工業(yè)ct的usb2.0高速數(shù)據(jù)傳輸系統(tǒng)
- usb3.0高速數(shù)據(jù)傳輸技術(shù)研究及應(yīng)用
- 基于usb3.0的pet高速數(shù)據(jù)傳輸系統(tǒng)的研究與實(shí)現(xiàn)
- 基于usb3.0的高速數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)與研究
- 基于usb3.0接口的高速數(shù)據(jù)傳輸技術(shù)研究
- 基于PDIUSBD12的USB通信協(xié)議實(shí)現(xiàn)及驅(qū)動(dòng)程序開發(fā).pdf
- 高速網(wǎng)卡數(shù)據(jù)傳輸?shù)难芯颗c實(shí)現(xiàn).pdf
- 基于usb3.0接口的高速數(shù)據(jù)傳輸電路設(shè)計(jì)與實(shí)現(xiàn)
- 基于dsp的usb2.0高速數(shù)據(jù)傳輸應(yīng)用研究
- 基于USB接口的無線數(shù)據(jù)傳輸.pdf
- 基于usb3.0的高速數(shù)據(jù)傳輸系統(tǒng)的研究與設(shè)計(jì)
- 基于Slave FIFO模式USB數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于usb3.0數(shù)據(jù)傳輸系統(tǒng)的研究
- 基于USB的無線數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于usb2.0的數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)
- 基于usb3.0的高速數(shù)據(jù)傳輸系統(tǒng)關(guān)鍵技術(shù)研究
- 螺旋CT高速數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 高速數(shù)據(jù)傳輸控制卡的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于FPGA的高速數(shù)據(jù)傳輸?shù)脑O(shè)計(jì)與實(shí)現(xiàn).pdf
- 雷達(dá)高速數(shù)據(jù)傳輸技術(shù)研究.pdf
評(píng)論
0/150
提交評(píng)論