熟女人妻水多爽中文字幕,国产精品鲁鲁鲁,隔壁的少妇2做爰韩国电影,亚洲最大中文字幕无码网站

技術頻道

娓娓工業
您現在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 基于CH372的USB數據采集系統的設計與實現

基于CH372的USB數據采集系統的設計與實現

時間:2008-11-05 10:57:00來源:ronggang

導語:?本文提出了一種基于USB總線傳輸協議的數據采集系統的設計方法。該系統應用CH372USB控制器與SPCE061A單片機完成設備與主機的通信
摘 要:本文提出了一種基于USB總線傳輸協議的數據采集系統的設計方法。該系統應用CH372USB控制器與SPCE061A單片機完成設備與主機的通信。文中介紹了數據采集系統的總體設計思想及層次結構,并介紹了固件程序,設備功能驅動程序和應用程序的設計方法。該系統應用CH372內置固件模式屏蔽了相關USB協議,并使用SPCE061A自帶的模數轉換器對數據進行轉換控制,使得硬件電路十分簡單, 可以廣泛的應用與對各種數據的采集。 關鍵詞:USB總線 ; 數據采集 ; CH372 0 .引言:   在現代科學研究中,經常要對數據進行采集分析。目前比較通用的是在PC內安裝數據采集卡(如A/D卡及422、485卡),但是這些數據采集設備由于安裝麻煩、價格昂貴、受計算機插槽數量、地址、中斷資源的限制,可擴展性差,以及無法做電磁屏蔽而導致采集的數據失真。隨著客戶對系統數據采集速度要求的不斷提高,USB以其使用方便、易于擴展、速度快等優點而越來越多的應用于數據采集系統中。   USB (Universal Serial Bus,通用串行總線)作為一種新的外設連接技術,可以簡化計算機與外設的連接過程,提高低速和高速的兼容,為用戶提供一種可共享的,可擴充的使用方便的串行總線。 1. USB數據采集系統的組成及工作原理   一個實用的USB數據采集系統包括A/D轉換器,DIO ,微控制器,USB控制芯片以及PC機端的應用程序。外部的被測信號經過傳感器變換為模擬電壓信號,經屏蔽電纜傳入A/D轉換模塊將其轉換為數字信號。在主機端,當外圍USB設備接入系統,經過總線枚舉被檢測、配置可用后,主機端的應用程序就可以控制數據采集系統對數據進行采集。微控制器根據所需的采樣速率進行數據采集,并將采集來的數據存儲在數據存儲器中,再通過USB接口控制芯片,將根據USB總線傳輸協議打包的數據放到USB總線傳給主機,由主機端的應用程序對數據進行顯示、分析處理。 2.系統硬件設計   USB總線接口控制器是USB設備與主機通信的重要器件。目前,市場上的USB控制器有很多種,大致可分為兩種,一種是帶USB接口的單片機,如cypress的cy系列;另一種是僅處理USB通信的,必須有一個外部微控制器來進行協議處理的純粹USB控制器。根據USB控制器的分類,要實現USB設備與主機的通信就有兩種方法(1)帶微處理器的USB控制器(2)獨立的USB控制器加微處理器。   本系統根據數據采集卡的功能,采用帶7通道10位精度A/D轉換器的SPCE061A單片機和CH372的USB控制芯片組成外部數據采集設備實現與主機的通信。   2.1 CH372控制器的主要特點:   (1) 支持全速設備接口,兼容USB2.0規范,即插即用,外圍元器件只需要晶體和電容。   (2) 提供一對主端點和一對輔助端點,支持控制傳輸、批量傳輸、中斷傳輸。   (3) 具有8位數據總線和讀、寫、片選控制線以及中斷輸出,可以方便的掛接到單片機/DSP/MPU等控制器的系統總線上。   (4) 內置了USB通訊中的底層協議,具有省事的內置固件模式和靈活的外置固件模式。在內置固件模式下,CH372自動處理默認端點0的所有事務,自動完成標準的USB枚舉配置過程,本地端單片機只要負責數據交換,所以單片機程序非常簡潔[1]。   2.2 SPCE061A的主要性能特點   SPCE061A擁有16位的微處理器核心,CPU工作時鐘頻率0.32—49.152MHz,2個10位數字模擬轉換輸出通道,7個10位模擬數字轉換器輸入通道,具有較高的處理速度,能夠更容易,更快速的處理復雜的數字信號.[2]   根據功能模塊的集成和CH372內置固件模式的特點,本系統的硬件電路十分簡單。 [align=center] 圖1 系統硬件連接示意圖[/align]   模擬信號經外部的放大由IOA[6:0]輸入,CH372芯片的讀選通輸出RD#和寫選通輸出WR#連接到單片機。CS#由地址譯碼電路驅動,可用于當單片機具有多個外圍器件時進行設備選擇,在本系統中要求CS#常為低電平,所以直接接地。INT#輸出的中斷請求是低電平有效,單片機可以使用中斷方式或者查詢方式獲知中斷請求。   當WR#為高電平并且CS#和RD#及A0 都為低電平時,CH372 中的數據通過D7~D0輸出;當RD#為高電平并且CS#和WR#及A0 都為低電平時,D7~D0上的數據被寫入CH372 芯片中;當RD#為高電平并且CS#和WR#都為低電平而A1 為高電平時,D7~D0 上的數據被作為命令碼寫入CH372芯片中[1]。 3.軟件設計   USB數據采集系統的軟件部分包括三個方面:單片機中的固件程序,設備驅動程序,和主機上的應用程序。   3.1 固件程序是與USB控制器相連的單片機執行的代碼,主要負責兩項任務。   (1) 響應主機對設備的枚舉實現對設備的配置,也就是使主機檢測并識別設備,為主機和設備之間的數據傳輸做準備。   (2) 根據PC機上的應用程序的要求,傳輸數據。   由于本系統使用的CH372USB控制器內置固件模式屏蔽了相關的USB協議,自動完成主機的USB枚舉配置過程,完全不需要本地端控制器做任何處理,所以固件程序只需要實現涉及對采集數據的傳輸、采集參數設置的要求即可。   SPCE061A共有7個A/D轉換通道,但只有一個ADC,在使用前必須查看P_ADC_MUX_Ctrl單元/P_ADC_Ctrl單元的RDY的值,以確定ADC為空閑狀態,通過設置P_ADC_MUX_Ctrl的第2-3位來實現通道切換,而且SPCE061A的A/D轉換只能通過讀取P_ADC_LINEIN_Data單元的數據來觸發[2]。數據采集依靠讀P_ADC_LINEIN_Data單元的數據進行連續的數據采集。由于USB的傳輸速度遠遠大于數據采集的速度,所以在SPCE061A內部RAM中定義雙數據緩沖區,利用緩沖區buf[0]做為緩沖區滿標志位和讀指針p來確定讀數據順序,實現輪流從兩個緩沖區讀取數據。當 buf_i[0]==1&&p==buf_i時,表示i緩沖區滿且讀數據順序正確,則從此緩沖區讀數據。在數據發送完后,改變緩沖區滿標志并設置讀指針,繼續讀下一個緩沖區。為使前一次的數據傳輸與后一次的數據傳輸連續,主機查詢的時間間隔要小于緩沖被寫滿一次所需要的時間。   CH372的端點0 是默認端點,在內置固件模式下,自動處理USB各種標準事務; 端點1 的下傳端點作為輔助端點,用來傳輸數據采集的控制命令,如數據采集的開始、停止、設置數據采集的各項參數等; 端點2 作為批量數據傳輸端點,用于對采集數據的傳輸。   CH372 在計算機應用層與本地端單片機之間提供了端對端的連接,本系統采用請求加應答方式進行通訊。計算機應用層按事先約定的命令碼加傳輸數據的格式將數據請求發送給CH372芯片,CH372 芯片再以中斷方式通知單片機,進入中斷服務程序。中斷服務程序通過執行GET_STUTAS命令獲取并分析中斷狀態,是發送數據成功,執行RD_USB_DATA命令從CH372讀取接收到的數據;是上傳數據成功,執行WR_USB_DATA命令向CH372寫入下一組要發送的數據;是中斷數據,分析控制命令類型并轉入執行相應的數據采集控制。   3.2 設備驅動程序   USB總線設備的客戶端驅動程序設計是開發USB總線外設的關鍵。USB總線設備采用分層的WDM驅動模型,通過它用戶不需要直接和硬件打交道,而只需通過下層驅動程序提供的接口來訪問硬件。驅動程序操作的核心是I/O請求包(IRP),各層驅動程序都要通過IRP來進行通信。當應用程序需要對設備進行I/O操作,就調用Windows API函數,WIN32子系統通知I/O管理器根據請求構造一個合適的IRP并把該請求傳遞至下一層。分發例程常常只執行對IRP的初始處理,如檢查所有的參數是否合法的,然后把IRP 分發到下層驅動去處理 [4]。USB功能驅動程序通過USB總線驅動程序接口訪問USB總線,所有低層I/O都由USB總線驅動程序處理,所以功能驅動程序只關心數據傳輸類型、傳輸時序、傳輸管道以及如何處理數據等操作。本系統直接應用CH372芯片開發商提供的包含創建、關閉設備、設備控制、設備PnP等操作的設備驅動程序。   3.3應用程序   客戶應用程序由Visual C++編寫,向用戶提供設備打開、關閉,對數據采集的參數調整,并對采集數據進行顯示等控制功能。當設備連接好并經配置可使用后,應用程序需要與設備進行通信,就可以啟動一次傳輸。 [align=center] 圖2 應用程序流程圖[/align]   USB設備對應用程序來說只是一個擁有設備名的文件,所以就可以使用Win32的API中的文件函數來對設備進行控制。在應用程序中利用多線程編程思想實現系統的實時性,主線程完成系統參數設置,顯示數據等,輔助線程單獨完成對數據的采集工作。 4.結束語   隨著USB傳輸數據速度的提高,傳輸實時性的增強,會出現越來越多的USB設備。本文則根據數據采集系統安裝麻煩,價格昂貴,可擴展性差的現狀,設計了一個基于USB總線接口的數據采集系統。該系統不僅硬件電路十分簡單,而且安裝方便,即插即用,有很好的可靠性和穩定性,可以廣泛的應用與對各種數據的采集。 本文作者創新點:   本系統對于USB傳輸應用CH372USB控制芯片的內置固件模式屏蔽了相關的USB協議,默認端點0自動處理主機的USB枚舉配置過程,完全不需要本地端控制器做任何處理, 單片機程序非常簡潔,并且對數據采集部分的硬件采用自帶模擬數字轉換功能的單片機,使得整個系統的控制和硬件電路都十分簡單。 參考文獻   [1] 南京沁恒電子有限公司 CH372S使用手冊 [M] 2005   [2] 羅亞非 凌陽16位單片機應用基礎[M].北京:北京航空航天大學出版社 2005   [3] Jan Axelson . USB大全 [M]. 北京: 中國電力出版社 2001   [4] Chris Cant . Windows WDM設備驅動程序開發指南[M]. 北京: 機械工業出版社 2003   [5] 曹利鋼 USB總線數據采集控制系統的開發與應用 [D].南昌:南昌大學碩士畢業論文 2005   [6] 邊海龍.賈少華USB 2.0設備設計與開發 [M]. 北京:人民郵電出版社 2004   [7] 石曉瑛 許智榜 基于AT90S8515和USB接口數據采集系統 [J].微計算機信息 2005   [8] 張弘. USB接口設計 [M]. 西安 : 西安電子科技大學出版社 2002

標簽:

點贊

分享到:

上一篇:論國產DCS及科遠DCS系統發展...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業自動化與智能制造的全媒體“互聯網+”創新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業執照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號

主站蜘蛛池模板: 麻江县| 塘沽区| 酉阳| 安陆市| 南通市| 简阳市| 吴江市| 乌恰县| 广昌县| 神池县| 靖州| 神木县| 延吉市| 拜城县| 昌图县| 万州区| 福泉市| 揭西县| 宁安市| 隆回县| 阿拉善右旗| 南丰县| 新邵县| 芜湖市| 五原县| 区。| 郁南县| 澄城县| 启东市| 富阳市| 长武县| 渭南市| 通辽市| 张家口市| 上饶县| 凤城市| 嘉义县| 奇台县| 同心县| 遂平县| 江源县|