當前位置:學問君>學習教育>畢業論文>

基於USB接口的儀器儀表通信技術

學問君 人氣:2.23W

USB(universal serial bus)即通用串行總線,它是一種應用在PC領域的新型接口技術。隨着支援USB標準Windows98的出現和USB設備數量的快速增加,USB纔在近年逐漸流行起來。目前普遍採用的USB1.1主要應用在中低速外部設備上,它提供的傳輸速度有低速1.5Mbps和全速12Mbps兩種,一個USB端口可同時支援全速和低速的設備訪問。目前,USB在自動化控制領域主要用於數據採集系統,由PC作爲USB主機端,單片機作爲USB設備端。

基於USB接口的儀器儀表通信技術

USB數據傳輸方式USB透過主機上客戶軟件的內存緩衝區和USB設備上端點之間的管道來傳送數據。它提供有4種傳輸方式:控制傳輸、同步傳輸、中斷傳輸和批量傳輸。控制傳輸發送設備請求資訊,主要用於讀取設備配置資訊和設備狀況,設定設備地址和設備屬性、發送控制命令等功能;同步傳輸提供了確定的帶寬和時間間隔,常被用於時間嚴格並具有較強容錯性的流數據傳輸,或4《自動化儀表》第24卷第10期 2003年10月PROCESS AUTOMATION INSTRUMENTATION, Vol.24, No。10,Oct。, 2003者用於要求恆定的數據傳輸率的即時應用中;中斷傳輸主要用來支援那些偶爾需要對少量數據進行通信,但服務時間卻受限的設備;批量傳輸主要用於大批量的數據傳輸,同時又沒有帶寬和時間間隔的要求,但是USB只能在滿足帶寬的情況下才進行批量傳輸。

USB外圍設備的設計方案目前用於USB外圍設備設計的方案有兩種:一種是採用普通單片機外加USB接口器件;另一種是採用具有USB接口的單片機。普通單片機外加USB接口器件USB接口器件只用於處理USB通信,它必須由一個外部單片機來控制。透過USB接口器件可以把USB端口接到任何類型的單片機上,這種實現USB接口的模組化設計方法使得設計者可自由選擇合適的單片機。

目前市場上已有很多公司提供USB接口器件,Philips公司的PDIUSBD12是一款性價比高、帶並行總線的USB接口器件,它集成了SIE(串行接口引擎)、FI-FO(先進先出)存儲器、收發器及電壓調節器,可與任何單片機實現高速並行接口;其主端點的雙緩衝配置增加了數據的吞吐量,從而可以輕鬆地實現實時數據傳送;可透過軟件控制與USB的連接,支援雙電源(即3。3V和擴展的5V)操作;具有高糾錯率的全掃描設計確保了其高品質。

具有USB接口的單片機隨着USB應用的日益廣泛和流行,Intel、Cypress等單片機廠商推出了具有USB接口的單片機,這類單片機處理能力強,有的本身就具備多路A/D、D/A,採用這類單片機構成系統的電路簡單、調試方便、電磁相容性好。因此採用具有USB接口的單片機成了開發USB外設的較好方案。不過由於增加了USB接口,這類單片機與原先的開發系統一般不完全相容,需要購買新的開發套件,需要新的投資。

Cypress半導體公司作爲USB市場的著名廠商,開發的EZ-USB FX2成了世界上第一款USB2。0集成微控制器。它包括1個增強型8051單片機、1個串行接口引擎(SIE)、1個USB收發器、片上RAM、FIFO存儲器以及1個通用可編程接口。FX2提供了一個全面集成的解決方案,它不僅可減少電路板空間,而且大大縮短了產品的上市時間。

FX2擁有一個獨特的架構,其智能串行接口引擎在硬件層上處理USB1。1和USB2。0協議的大部分內容,因此外設產品設計人員不必爲增加產品的USB功能而學習USB協議,從而使產品開發變得更加容易,同時減輕了單片機的負擔,而讓智能串行接口引擎從硬件上保證更高的傳輸率。FX2通用可編程接口(GPIF),允許它"無膠粘接",即可與任何ASIC或DSP進行接口,並且它還支援所有通用總線標準,包括ATA、UTOPIA、EPP和PCMCIA。FX2完全適用於USB2。0,並向下相容USB1.1。

USB在測控領域的應用2001年9月的.《Test andMeasurement World》進行了一次針對測量應用中PC用戶的未來需求調查,該調查顯示越來越多的用戶期望使用USB接口將他們的儀器及數據採集設備連接到PC。

USB通信的軟件設計包括單片機部分的固件部分和主機(PC)的驅動程序部分。對於單片機控制程序,由於目前沒有任何廠商提供自動生成固件(firmware)的工具,因此所有程序都需要手工編制。對USB的單片機控制程序通常由三部分組成:①初始化單片機和所有的外圍電路(包括PDIUS-BD12);②主循環部分,其任務是可以中斷的;③中斷服務程序,其任務是對時間敏感的,必須馬上執行。根據USB協議,任何傳輸都是由主機(host)開始的,這樣,單片機作它的前臺工作,等待中斷。

主機首先要發令牌包給USB設備,PDIUSBD12接收到令牌包後就給單片機發中斷,單片機進入中斷服務程序,首先讀PDIUSBD12的中斷寄存器,判斷USB令牌包的類型,然後執行相應的操作。因此,USB單片機程序主要就是相對應的中斷服務程序。

對於主機部分的軟件設計,Windows98已提供多種USB設備的驅動程序,但還沒有一種是專門針對數據採集系統的,所以必須針對特定的設備來編制驅動程序。儘管系統已經提供了很多標準接口函數,但編制驅動程序仍然是USB開發中最困難的一件事情,通常採用WindowsDDK來實現。作爲WIN98和WIN2K推薦的一項新技術來說,USB的驅動程序和以往的直接跟硬件打交道的WIN95的VXD方式的驅動程序不同,它屬於WDM類型。