關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于USB接口的高增益數據采集系統

        基于USB接口的高增益數據采集系統

        作者: 時間:2009-06-16 來源:網絡 收藏

          0 引言

        本文引用地址:http://www.104case.com/article/202695.htm

          在現代工業生產和科學技術研究等各行業中,通常需要對各種數據進行采集。目前常用的通過數據采集板卡采集的方法存在著以下缺點:安裝麻煩,易受機箱內環境的干擾而導致采集數據的失真,容易受計算機插槽數量和地址、中斷資源的限制,可擴展性差。而帶RS-232串口的數據采集器,在需要大批量、高速傳輸的場合下,其應用也受到限制。通用串行總線(Universal Serial Bus)的出現,很好地解決了上述問題,很容易實現便捷、高速、低成本、易擴展、高可靠性的數據采集,代表了現代的發展趨勢。

          1 硬件設計與實現

          總線傳輸速度快,為了充分發揮總線這一優勢,易選用速度較快的微處理器。另外,USB設備是采用總線供電的,考慮到總線輸出功率有限,盡量采用集成度高的器件有利于降低USB總線的負荷。

          USB模塊的選擇有兩種方案:一種是采用帶有USB的單片機;另一種是采用普通單片機和USB控制芯片。對于第一種方案,不需要設計單片機和USB控制芯片之間的接口電路,簡化了電路設計,但是帶有USB接口的單片機種類有限,從而限制了單片機的選擇。對于后一種方案,可以選擇所熟悉的單片機,以減小開發難度,并縮短開發周期。系統采用的是SOC單片機C8051F000,USB控制芯片采用PDIUSBD12。

          C8051F000單片機[1]是四邊扁平貼片封裝,內部集成了8通道的12位A/D轉換器, 可編程放大器PGA,自帶看門狗,具有32位數字I/O端口,體積小巧,集成度高,功耗較小,滿足USB總線供電的要求。而且,C8051F000單片機最大工作頻率可達到25MIPS,采用流水線結構,是單指令周期單片機,運行速度也較快,適于開發USB設備。

          PDIUSBD12 是Philips 公司推出的符合USB1.1版規范的帶并行總線的接口芯片。片內集成了320B的FIFO存儲器,在批量模式和同步模式下均可實現1MB/s的數據傳輸速率,集成了模擬收發器,串行接口引擎,串行接口引擎實現了全部的USB協議層,包括并行/串行轉換、位填充/解除填充、CRC校驗/產生、地址識別和握手評估/產生等,從而減小了PDIUSBD12驅動程序開發的難度[2,3]。

          系統硬件包括主MCU、USB接口電路、模擬信號輸入調理電路和電源轉換電路等組成部分,其工作原理圖如圖1所示。

        工作原理圖

          系統有8路模擬輸入,模擬輸入信號經過信號調理電路濾波、放大后送給C8051F000,此單片機自帶的A/D轉換器將輸入的模擬信號轉換為數字信號,并通過USB接口傳送給計算機。計算機也可以通過USB接口向C8051F000發送命令。系統采用USB總線供電,由于USB總線只能提供+5V供電,而單片機C8051F000所需要的典型供電電壓是3.3V,信號調理電路中的多路轉換開關和運算放大器所需要的供電電壓是+9V和-5V,故須設計電源轉換電路將5V電壓轉換為3.3V、-5V和+9V,以便給相應的芯片提供電壓。其中USB接口電路和信號調理電路的設計是最為重要的兩個部分。

          1.1 USB接口電路的設計

          USB控制芯片PDIUSBD12與計算機及單片機之間的接口電路如圖2所示。USB總線共4條線,兩條電源線VCC和GND、兩條差分數據線D+和D-。為了防止在讀寫數據的過程中電壓波動,及附近大功率用電設備對電壓的影響,在USB總線的兩條電源線VCC和GND之間加了去耦電容。USB總線是采用差分數據傳輸,因此在任意時刻,只能有一個發送器或接收器。在D+/D-線上串接的兩個18Ω電阻,及下拉的兩個1M電阻是用來進行阻抗匹配的。

        USB控制芯片PDIUSBD12與計算機及單片機之間的接口電路

          PDIUSBD12的8根數據線D0~D7與單片機的8根數據線分別連接,實現PDIUSBD12與單片機之間8位數據的并行傳輸,PDIUSBD12的讀寫引腳與單片機的I/O引腳相連,以實現單片機對PDIUSBD12的讀寫操作。PDIUSBD12的引腳A0是命令口和數據口的地址線,PDIUSBD12有兩種數據總線方式:多路地址/數據總線和單地址數據總線,為了盡量少占用單片機的I/O引腳,系統采用單地址數據總線,PDIUSBD12的引腳ALE接地,引腳A0與單片機的I/O引腳相連,A0為1時,總線D0~D7上傳輸的是命令,A0為0時,總線D0~D7上傳輸的是數據。PDIUSBD12的掛起引腳SUSPD和中斷引腳INT分別與單片機的一個I/O引腳相連,以實現PDIUSBD12掛起及PDIUSBD12向單片機發出中斷。系統中PDIUSBD12的DMA功能沒有使用,引腳DMACK和EOT都通過一個上拉電阻連到電源。振蕩電路采用6MHz晶振,經過PDIUSBD12內部倍頻電路之后,PDIUSBD12內部實際時鐘為24MHz 。引腳GL通過一個綠色指示燈和一個電阻連到電源,當該儀器枚舉成功以后,該指示燈亮,當計算機與該儀器進行通訊時,此指示燈閃爍。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 资兴市| 彭泽县| 珲春市| 昆明市| 莒南县| 满洲里市| 巩留县| 濉溪县| 正安县| 奈曼旗| 宜春市| 和政县| 新巴尔虎右旗| 二连浩特市| 清新县| 两当县| 山阴县| 长白| 车致| 盱眙县| 双牌县| 临清市| 句容市| 襄樊市| 沙坪坝区| 增城市| 介休市| 新化县| 怀安县| 松滋市| 罗城| 赣州市| 芦山县| 南靖县| 望都县| 奉化市| 博白县| 盈江县| 叶城县| 侯马市| 定州市|