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