• /  19
  • 下載費用: 19.9積分  

基于USB數據采集系統設計說明.doc

'基于USB數據采集系統設計說明.doc'
?基于USB的數據采集系統設計摘 要:本文針對高速數據采集器的需要,設計了基于USB的數據采集器。設計工作包括硬件設計和軟件設計兩部分,硬件部分本系統選用了ATMEL公司的單片機AT89C5131作為微控制器,負責接收由A/D轉換得到的數字量數據,并通過其置的USB控制器實現單片機和PC機之間的USB數據通信。AT89C5131是ATMEL公司推出一款新型帶有USB微控制器的芯片。有較快的處理速度和較大的存儲容量,有在系統可編程的功能,是USB接口設計的理想選擇。關鍵詞:數據采集,USB,A/D,AT89C5131, Abstract: In this paper, the need for high-speed data acquisition system designed USB-based data acquisition. Design, including hardware design and software design in two parts, hardware parts of the system selected as the ATMEL Corporation AT89C5131 microcontroller microcontroller to receive the A / D conversion by the digital data, and through its built-in USB Controller Between the microcontroller and PC, USB data communication. ATMEL AT89C5131 is a new company launched with a USB micro-controller chip. A faster processing speed and large storage capacity, there is in-system programmable functions, is ideal for USB interface design.Keywords: data acquisition,USB,A/ D, AT89C51, LED目錄1 前言……………………………………………………………………………………………12 整體方案設計…………………………………………………………………………………22.1方案比較…………………………………………………………………………………22.2方案選擇…………………………………………………………………………………33 單元模塊設計…………………………………………………………………………………33.1元器件選擇………………………………………………………………………………33.2特殊元器件介紹…………………………………………………………………………33.2.1AT89C5131介紹……………………………………………………………………33.2.2 ADC0809 介紹………………………………………………………………………43.3單元模塊功能介紹………………………………………………………………………53.3.1 AT89C5131USB接口電路……………………………………………………………53.3.2A/D轉換接口電路……………………………………………………………………63.3.3外接存儲器接口電路……………………………………………………………… 9 3.3.4系統外圍電路模塊………………………………………………………………… 114 軟件設計………………………………………………………………………………………114.1固件程序設計…………………………………………………………………………114.2USB設備驅動程序設計………………………………………………………………135結論……………………………………………………………………………………………14參考文獻………………………………………………………………………………………15附錄1:電路總圖………………………………………………………………………………161 前言現代工業生產領域和科學研究中往往都需要采集數據,并對采集到的數據進行分析和處理。隨著科技的發展特別是計算機技術的逐漸成熟,數據采集器的應用已經非常廣泛,同時對于數據采集的要求也越來越高,特別是在一些高實時性要求(如動態圖像數據實時傳輸)的場合,往往需要進行高速數據采集才能保證數據傳輸的準確性。在數據采集系統得到廣泛運用多采用RS232接口,它不適合于便攜式應用場合。USB(通用串行總線,Universal Serial Bus)近年來開始在計算機外設中得到普及,并逐漸成為計算機標準外設,它的出現使傳統數據采集的問題可以得到很好的解決。相對于傳統的串行、并行接口,USB的優勢在于:即插即用,支持熱插拔;傳輸速度快,USB2.0提供最高達480Mbps的傳輸率;最多可連接127個設備;電源可從計算機或集線器獲得,不需要外加電源。USB設備在PC領域的應用目前已經非常普遍,如USB數碼照相機、USB攝像頭、USB打印機等;而考慮到USB的各種優勢,基于USB總線的數據采集器也正逐漸成為工控領域的應用熱點。目前國外都已開發出了一些成熟的USB數據采集設備產品,可見基于USB的數據采集器具有廣闊的應用前景,因此本課題的研究具有現實意義。本文針對高速數據采集器的需要,設計了基于USB的數據采集器。設計工作包括硬件設計和軟件設計兩部分,硬件部分本系統選用了ATMEL公司的單片機AT89C5131作為微控制器,負責接收由A/D轉換得到的數字量數據,并通過其置的USB控制器實現單片機和PC機之間的USB數據通信。AT89C5131是ATMEL公司推出一款新型帶有USB微控制器的芯片。有較快的處理速度和較大的存儲容量,有在系統可編程的功能,是USB接口設計的理想選擇。2 整體方案設計2.1方案比較方案一: USB傳輸的主要特點是傳輸速度快,因此USB數據采集系統主要是應用于大量數據的高速采集。實際應用中,往往同時需要對多個外設的多路數據進行采集,因而對數據傳輸的實時性要求較高,USB2.0的出現使這種高速數據傳輸已成為可能。本系統在實際應用中的硬件設計框圖如圖1所示。系統中外設1~外設n具有多路數據需要進行同步采集(數據信號可能包括電壓、電流、聲音、圖像等各種模擬信號),因而需要選用能對多路數據進行同步采樣的A/D轉換器將這些模擬信號轉換為數字信號。該芯片能對最多8路模擬輸入信號進行同步A/D轉換,且分辨率達到14位,完全能滿足對多路數據同步采集的要求。轉換得到的數據送入主控制器,再通過USB控制器芯片使這些數據可通過USB2.0的高速傳輸送到PC機中??刂破餍酒蛇x擇位數較高(16位/32位)的MCU/DSP,從而能滿足多路并行數據的輸入。在此方案中USB控制芯片選用AT89C5131單片機芯片。省略部分。4.1固件程序設計固件是整個USB數據采集系統中設備程序設計的重要部分,固件程序的主要功能是讓主機(PC機)可以檢測和識別USB設備,一般包括兩項任務:(1)實現設備配置并將配置信息告知主機,為主機和設備之間的通信做好準備;(2)根據用戶的特定需求,實現對外圍設備的具體控制。固件程序設計流程圖如圖9所示NNY啟動A/D轉換讀取數據N轉換結束?Y發送數據給主機中斷程序開始初始化設備枚舉啟動采樣?設置采樣頻率上電復位選擇采樣通道數據采集結?圖9固件程序流程圖由圖可知固件設計包括以下幾個方面:(1)系統上電復位和初始化。首先通過調用USB初始化函數usb task_init()完成USB控制器的使能、PLL時鐘的配置、控制端點0的復位以及其它狀態變量的初始化;再通過調用端點使能函數usb_ep_init()完成系統使用的USB端點的配置和復位。(2)USB設備的枚舉。USB控制器和USB端點完成初始化工作后,固件就會開始對設備的枚舉過程;當端點0收到SETUP包后,就可以調用枚舉函數usb_enumeration_process()完成對USB設備的枚舉,從而主機可獲得設備的配置信息并對設備進行配置和分配地址。(3)數據采集過程。當配置的OUT端點收到主機發出的數據采集指令后,先設置好采樣頻率并選擇采樣通道,然后即可對選道的數據進行A/D轉換;轉換完成后將數據送入配置的IN端點,當收到主機發出的SETUP包后,即可將數據發送給主機。本系統固件設計使用了定時器中斷。通過固件程序的執行,當USB設備(AT89C5131)連接到主機上時,主機能發現并識別新設備,然后建立連接并完成主機與設備間的數據傳輸任務。4.2USB設備驅動程序設計驅動程序是操作系統中控制和連接硬件的關鍵模塊,它給連接到計算機的硬件設備提供軟件接口。本系統中主機通過USB接口與設備的通信也需要通過USB驅動程序來實現,Windows雖然提供了多種USB設備的驅動程序,但并沒有具體針對數據采集系統的驅動程序,因此本系統需要針對特定的設備(AT89C5131)來編制USB設備驅動程序。Microsoft為Windows定義了設備驅動程序的模型,USB設備驅動程序也必須遵循該驅動程序模型,即WDM分層驅動程序模型。USB驅動程序也分為USB總線驅動程序和USB功能(設備)驅動程序,前者由操作系統提供,負責與實際硬件打交道;后者需要設備開發者編寫,不對實際的硬件進行操作。USB功能驅動程序通過創建和發送URB(USB Request Block)的方式,把命令傳遞給Windows操作系統所提供的USB總線驅動程序,由總線驅動來完成與硬件的直接交互。USB設備驅動程序使用USB驅動程序接口(USBDI)將URB提交到總線驅動程序就可完成硬件操作。USBDI位于USB設備驅動程序與USB驅動程序棧之間,為開發人員提供實現兩者之間通信的接口函數。USB驅動程序接口與USB驅動程序棧的結構如圖10所示。USB驅動程序棧USBD1USB驅動程序接口USB設備驅動程序USB集線器驅動程序USB總線驅動程序PCI枚舉器USB總線UHCD.SYSOpenHCI.SYS圖10USBDI與USB驅動程序棧Windows的驅動程序開發軟件有很多,通常采用的是Windows DDK(DeviceDevelopment Kit)。DDK是Microsoft公司提供的驅動程序開發工具,使用DDK直接開發驅動程序屬于從底層開發做起,開發難度較大。為了方便驅動程序開發,目前許多第三方軟件廠商提供了各種各樣的生成工具,如Compuware公司的DriverStudio就是其中效率較高的開發工具,它能夠在幾分鐘之生成高質量的USB驅動程序。本系統的USB驅動程序使用DriverWorks開發,DriverWorks本身包含在DriverStudio軟件中,它只是對DDK例程函數調用的C++封裝。因此使用DriverWorks開發驅動程序需要安裝DDK和Visual C++6.0,并在Visual C++6.0的開發環境中進行驅動的編寫和編譯。在進行USB驅動程序開發之前首先要明確USB設備的配置和驅動程序實現的功能。在本系統中,共用到三個USB端點:控制端點0、BULK IN端點1和BULK OUT端點2;而驅動程序的主要功能是實現對輸入和輸出端點的讀寫操作。明確以上信息后,就可通過DriverWorks的程序向導生成可以完成對USB設備BULK類型端點進行讀寫的驅動程序工程文件了。然后需要在Visual C++6.0的環境中對生成的驅動程序進行編譯生成.sys文件,并且對自動生成的INF安裝文件進行適當的修改即可完成驅動程序的安裝使用。5 結論本文實現了基于USB的數據采集,USB作為一種傳輸速率高、即插即用、支持熱插拔的通用串行總線,其應用領域正變得越來越廣泛。本系統選用的單片機AT89C5131及其置USB控制器;然后分別對USB接口電路、A/D轉換電路、外接存儲器接口電路、以及系統外圍電路作了詳細的說明。本系統硬件電路原理圖見附錄1并且在硬件設計的基礎上進行軟件設計,使系統可以進行正常的數據采集。本文針對傳統數據采集系統的缺點,充分利用USB總線的優越性,設計了基于USB的數據采集系統。系統軟件設計部分包括固件程序設計、USB驅動程序設計和應用程序設計三大部分。固件程序設計使用C51編寫,文中給出了固件程序的主要代碼和流程圖,通過固件程序實現了USB設備的枚舉以及數據的采集。USB驅動程序由DriverWorks生成框架,并經過適當的修改形成本系統中USB設備的驅動程序,PC機安裝驅動程序后USB設備能正常與主機通信。應用程序使用VC++開發,并使用MFC可制作USB數據采集系統的界面。不過使用ADC0809芯片僅僅是為了樣機實現的方便,由于該A/D轉換器只能對最多8路數據進行分時A/D轉換,因此還不能達到真正意義上高速采集的要求。為了提高采集速度和采樣精度,在實際應用系統中應該使用能對多路數據進行同步轉換并且分辨率更高的A/D轉換器,即需要選擇與USB高速傳輸相匹配的高速器件。參考文獻[1] 蘭英.基于USB數據采集系統的研究與設計[D].:理工大學.2007[2] 朱麗,鐘榮,秀再.基于VC的USB接口通信程序設計[J].電子工程師.[3] 邊海龍、賈少華.USB2.0設備的設計與開發[M].:人民郵電.2004[4] 吳鵬,正,胡宇貞.基于單片機USB接口的PC主機驅動程序和應用程序設計[5] 鑒,黃大勇.基于CY7C68013的USB數據采集系統[J].[6] 王成儒 英偉 USB2.0原理與工程開發. 國防工業.2004[7] 周立功.USB2.0與OTG規開發指南[M].:航空航天大學.2004[8]肖踞雄,翁鐵成,宋中慶.USB技術及應用設計[M].:清華大學.2003[9]MAXIM.MAX1316 Data Sheet.2004
關 鍵 詞:
數據 usb 系統 采集 基于 設計說明
 天天文庫所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:基于USB數據采集系統設計說明.doc
鏈接地址: http://www.094347.live/p-55569020.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服點擊這里,給天天文庫發消息,QQ:1290478887 - 聯系我們

本站為“文檔C2C交易模式”,即用戶上傳的文檔直接賣給(下載)用戶,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有【成交的100%(原創)】。本站是網絡服務平臺方,若您的權利被侵害,侵權客服QQ:1290478887 歡迎舉報。

[email protected] 2017-2027 http://www.094347.live 網站版權所有

粵ICP備19057495號 

收起
展開
有没有苹果软件赚钱的 东风科技股票行情 福建36选7第20006期 河南泳坛夺金481开奖结果 股票融资优点有哪些 pk10精准计划软件手机 河南22选5最新开奖结果 喜乐彩票网 怎么理财才能存钱 私募基金配资合法吗 河北11选5top10遗漏