《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于USB接口的高增益數(shù)據(jù)采集系統(tǒng)
基于USB接口的高增益數(shù)據(jù)采集系統(tǒng)
摘要: 在現(xiàn)代工業(yè)生產(chǎn)和科學(xué)技術(shù)研究等各行業(yè)中,通常需要對(duì)各種數(shù)據(jù)進(jìn)行采集。目前常用的通過數(shù)據(jù)采集板卡采集的方法存在著以下缺點(diǎn):安裝麻煩,易受機(jī)箱內(nèi)環(huán)境的干擾而導(dǎo)致采集數(shù)據(jù)的失真,容易受計(jì)算機(jī)插槽數(shù)量和地址、中斷資源的限制,可擴(kuò)展性差。
Abstract:
Key words :

  0 引言

  在現(xiàn)代工業(yè)生產(chǎn)和科學(xué)技術(shù)研究等各行業(yè)中,通常需要對(duì)各種數(shù)據(jù)進(jìn)行采集。目前常用的通過數(shù)據(jù)采集板卡采集的方法存在著以下缺點(diǎn):安裝麻煩,易受機(jī)箱內(nèi)環(huán)境的干擾而導(dǎo)致采集數(shù)據(jù)的失真,容易受計(jì)算機(jī)插槽數(shù)量和地址、中斷資源的限制,可擴(kuò)展性差。而帶RS-232串口的數(shù)據(jù)采集器,在需要大批量、高速傳輸?shù)膱?chǎng)合下,其應(yīng)用也受到限制。通用串行總線USB(Universal Serial Bus)的出現(xiàn),很好地解決了上述問題,很容易實(shí)現(xiàn)便捷、高速、低成本、易擴(kuò)展、高可靠性的數(shù)據(jù)采集,代表了現(xiàn)代數(shù)據(jù)采集系統(tǒng)的發(fā)展趨勢(shì)。

  1 硬件設(shè)計(jì)與實(shí)現(xiàn)

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

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

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

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

  系統(tǒng)硬件包括主MCU、USB接口電路、模擬信號(hào)輸入調(diào)理電路和電源轉(zhuǎn)換電路等組成部分,其工作原理圖如圖1所示。

工作原理圖

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

  1.1 USB接口電路的設(shè)計(jì)

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

USB控制芯片PDIUSBD12與計(jì)算機(jī)及單片機(jī)之間的接口電路

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

 

  1.2 信號(hào)調(diào)理電路的設(shè)計(jì)

  信號(hào)調(diào)理電路主要包括模擬信號(hào)多路選擇、濾波和信號(hào)放大等組成部分,電路如圖3所示。

信號(hào)調(diào)理電路

  系統(tǒng)電路設(shè)計(jì)中,只使用了單片機(jī)C8051F000本身自帶的一路模擬輸入AIN0;在單片機(jī)外圍用多路模擬開關(guān)CD4051擴(kuò)展了8路模擬輸入。當(dāng)單片機(jī)給CD4066的引腳CONT1輸入一個(gè)低電平、給引腳CONT2輸入一個(gè)高電平時(shí),CD4066的引腳IN1和OUT1之間斷開、引腳IN2和OUT2之間短接,運(yùn)算放大器ICL7650的負(fù)端輸入與它的輸出斷開,此時(shí)ICL7650對(duì)它的輸入信號(hào)放大8倍;當(dāng)單片機(jī)給CD4066的引腳CONT1輸入一個(gè)高電平、引腳CONT2輸入一個(gè)低電平時(shí),CD4066的引腳IN1和OUT1之間短接、引腳IN2和OUT2之間斷開,ICL7650的負(fù)端輸入與它的輸出直接短接,此時(shí)ICL7650和它的外圍電路一起組成了一個(gè)電壓跟隨器,只是增大A/D轉(zhuǎn)換器的輸入阻抗,并不對(duì)它的輸入信號(hào)進(jìn)行增益放大。

  C8051F000片內(nèi)集成的增益放大器PGA編程范圍為0.5~16,當(dāng)ICL7650作為一個(gè)電壓跟隨器時(shí),系統(tǒng)可編程增益范圍為0.5~16;當(dāng)ICL7650對(duì)輸入信號(hào)進(jìn)行8倍放大時(shí),系統(tǒng)可編程增益范圍為4~128,由此可見,系統(tǒng)可編程增益范圍較寬,滿足大多數(shù)情況下增益放大需要。

  2 軟件設(shè)計(jì)與實(shí)現(xiàn)

  系統(tǒng)軟件包括單片機(jī)固件程序,USB驅(qū)動(dòng)程序及其鏈接庫,及用戶應(yīng)用程序。為了降低開發(fā)難度及縮短開發(fā)周期,系統(tǒng)采用了周立功公司開發(fā)的D12 SMART套件中的USB驅(qū)動(dòng)程序及其鏈接庫[3],該鏈接庫為用戶應(yīng)用程序提供了API函數(shù),在編寫應(yīng)用程序時(shí),只需調(diào)用API函數(shù)與采集系統(tǒng)之間交換數(shù)據(jù),而不需要關(guān)心具體的USB通訊協(xié)議。

  單片機(jī)固件設(shè)計(jì)采用中斷驅(qū)動(dòng)方式。CPU在前臺(tái)進(jìn)行數(shù)據(jù)采集, USB傳輸則在后臺(tái)進(jìn)行, 而其中斷和主循環(huán)的數(shù)據(jù)交換則通過事件標(biāo)志和數(shù)據(jù)緩沖區(qū)進(jìn)行。這樣既保證了數(shù)據(jù)采集的實(shí)時(shí)性,又獲得了最佳的傳輸速率。固件結(jié)構(gòu)如圖4 所示。 

固件結(jié)構(gòu)

  中斷服務(wù)程序主要負(fù)責(zé)從PDIUSBD12收集數(shù)據(jù), 將建立包和OUT數(shù)據(jù)存入數(shù)據(jù)緩沖結(jié)構(gòu)體,并設(shè)置相應(yīng)的標(biāo)志位;而主循環(huán)負(fù)責(zé)對(duì)數(shù)據(jù)進(jìn)行處理,根據(jù)標(biāo)志位區(qū)分是標(biāo)準(zhǔn)請(qǐng)求還是廠商請(qǐng)求,進(jìn)而調(diào)用標(biāo)準(zhǔn)請(qǐng)求處理程序和廠商請(qǐng)求處理程序。其中標(biāo)準(zhǔn)請(qǐng)求處理程序主要負(fù)責(zé)在設(shè)備枚舉過程中主機(jī)為識(shí)別設(shè)備而發(fā)送的請(qǐng)求, 主要包括讀取USB設(shè)備描述符、給USB設(shè)備分配地址、配置USB設(shè)備等功能。只有在計(jì)算機(jī)與USB設(shè)備建立鏈接之后,計(jì)算機(jī)才能識(shí)別出USB設(shè)備,與USB設(shè)備進(jìn)行通訊。而廠商請(qǐng)求處理中是自行定義的請(qǐng)求處理函數(shù), 用來處理計(jì)算機(jī)發(fā)送給采集系統(tǒng)的各個(gè)設(shè)定命令,主要包括設(shè)定采集系統(tǒng)的量程、讀取通道采樣數(shù)據(jù)等命令。標(biāo)準(zhǔn)設(shè)備請(qǐng)求是在枚舉過程中由安裝在PC機(jī)中的USB驅(qū)動(dòng)程序發(fā)送給USB設(shè)備的,而廠商請(qǐng)求是由用戶應(yīng)用程序通過調(diào)用USB鏈接庫提供的API函數(shù)將命令傳遞到功能驅(qū)動(dòng)程序后, 通過相應(yīng)例程發(fā)送到USB設(shè)備的。

  PDIUSBD12 命令接口是一套訪問PDIUSBD12 所有功能的處理函數(shù),主要包括對(duì)PDIUSBD12設(shè)置地址、設(shè)置端點(diǎn)使能、設(shè)置模式、讀中斷寄存器、選擇端點(diǎn)、讀端點(diǎn)狀態(tài)、讀取緩沖區(qū)、清緩沖區(qū)等操作。當(dāng)固件中的其它程序需要對(duì)PDIUSBD12 進(jìn)行操作時(shí), 只須調(diào)用其中相應(yīng)的子程序即可。

  硬件提取層是固件中的最底層代碼, 直接對(duì)PDIUSBD12訪問,其執(zhí)行與具體硬件電路有關(guān),使用的單片機(jī)不同, 或者實(shí)現(xiàn)的設(shè)備功能不同時(shí)這部分代碼也有所不同。

  3 結(jié)束語

  系統(tǒng)采用高速SOC單片機(jī)C8051F000和PDIUSBD12實(shí)現(xiàn)了寬量程的數(shù)據(jù)采集和基于USB接口的數(shù)據(jù)傳輸,基于該方案的采集系統(tǒng)已經(jīng)在實(shí)驗(yàn)室調(diào)試通過,能夠準(zhǔn)確地進(jìn)行數(shù)據(jù)采樣和傳輸。本文作者創(chuàng)新點(diǎn):利用了C8051F000片內(nèi)集成的增益放大器PGA,并結(jié)合外圍增益放大電路使系統(tǒng)的最大增益放大倍數(shù)達(dá)到了128倍,從而使系統(tǒng)能完成較寬范圍內(nèi)的電壓信號(hào)采集;系統(tǒng)在PDIUSBD12與單片機(jī)之間的接口電路設(shè)計(jì)中采用了單地址數(shù)據(jù)總線方案,相對(duì)于通常所采用的多路地址/數(shù)據(jù)總線方式大大減少了單片機(jī)I/O引腳的占用。

  4 參考文獻(xiàn)

  [1] 潘琢金,施國(guó)君.C8051F×××高速SOC單片機(jī)原理及應(yīng)用.北京:北京航空航天大學(xué)出版社,2002

  [2] 馬軍,李玉林.基于PDIUSBD12芯片的USB接口設(shè)計(jì).微計(jì)算機(jī)信息,2006,22(7):285~288

  [3] 周立功.PDIUSBD12固件編程與驅(qū)動(dòng)開發(fā). 北京:北京航空航天大學(xué)出版社,2003

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美视频导航| 最近中文字幕mv在线一区二区三区四区| 久久久国产视频91| 午夜精品一区二区三区在线| 宅男66日本亚洲欧美视频| 亚洲乱码视频| 亚洲精品一区二区网址| 亚洲欧洲一区二区三区| 久久精品视频在线看| 久久国产婷婷国产香蕉| 久久国内精品视频| 久久精品免费观看| 亚洲国产精品免费| 亚洲欧洲综合| 91久久久一线二线三线品牌| 亚洲国产日韩欧美| 久久精品国产亚洲高清剧情介绍| 亚洲欧美日韩国产中文| 午夜精品视频在线| 欧美尤物巨大精品爽| 久久精品成人一区二区三区蜜臀 | 99re6这里只有精品| 日韩西西人体444www| 一区二区精品在线| 亚洲视频在线播放| 亚洲欧美日韩国产一区二区三区| 欧美在线视频日韩| 亚洲韩国日本中文字幕| 日韩午夜在线电影| 亚洲一区二区三区四区中文| 性久久久久久久| 久久亚洲不卡| 欧美国产欧美综合| 欧美日韩综合一区| 国产伦精品一区二区三| 狠狠爱成人网| 亚洲人成小说网站色在线| 夜夜嗨一区二区三区| 亚洲一级黄色av| 久久精品国产一区二区三| 日韩亚洲国产欧美| 午夜久久99| 久久综合伊人77777| 欧美日韩精品免费看| 国产欧美亚洲精品| 亚洲二区免费| 亚洲一区在线免费观看| 亚洲高清免费在线| 一区二区三区高清视频在线观看| 亚洲欧美日韩直播| 久久综合亚洲社区| 欧美日韩综合在线免费观看| 国产日韩成人精品| 亚洲黄色有码视频| 亚洲欧美经典视频| 亚洲精品欧美在线| 欧美在线观看视频| 欧美激情一区三区| 国产日韩亚洲欧美| 亚洲精品久久在线| 欧美亚洲在线视频| 一区二区免费在线播放| 欧美在线视频全部完| 欧美国产视频在线| 国产欧美91| 亚洲欧洲日产国码二区| 午夜精品一区二区三区四区 | 国产乱子伦一区二区三区国色天香 | 亚洲电影免费在线| 亚洲欧美日韩天堂| 99av国产精品欲麻豆| 久久精品国产v日韩v亚洲| 欧美日韩午夜视频在线观看| 一区二区视频免费在线观看| 亚洲一区在线观看视频| 亚洲美女淫视频| 久久丁香综合五月国产三级网站| 欧美日韩精品在线观看| 一区二区在线观看视频在线观看| 亚洲一区二区四区| 一区二区三区高清视频在线观看 | 欧美黄色网络| 国产亚洲aⅴaaaaaa毛片| 亚洲人精品午夜| 久久精品国产91精品亚洲| 亚洲欧美区自拍先锋| 欧美精品一区二区三区视频| 国内精品**久久毛片app| 亚洲视频在线一区| 99成人在线| 蜜乳av另类精品一区二区| 国产日韩欧美在线看| 这里是久久伊人| 亚洲美女诱惑| 免费在线观看一区二区| 国产亚洲精品aa| 亚洲在线不卡| 亚洲一区二区三区乱码aⅴ| 欧美精品一区二区三区蜜桃| 在线日本高清免费不卡| 久久aⅴ国产欧美74aaa| 欧美在线free| 国产精品亚洲美女av网站| av成人免费| 国产精品99久久久久久www| 欧美激情精品| 亚洲黄色免费网站| 亚洲美女黄网| 欧美激情一区在线观看| 亚洲国产视频一区二区| 亚洲人成小说网站色在线| 麻豆av一区二区三区| 国产一区久久| 久久国产精品高清| 久久久久国内| 韩国成人福利片在线播放| 欧美中文字幕第一页| 久久精品免视看| 国产亚洲福利| 久久精品亚洲精品国产欧美kt∨| 久久久久免费| 一色屋精品视频在线看| 亚洲国产专区校园欧美| 美国十次成人| 亚洲观看高清完整版在线观看| 亚洲激情视频在线| 欧美不卡视频一区| 91久久精品网| 99人久久精品视频最新地址| 欧美日本在线| 亚洲视频一区在线观看| 欧美亚洲在线观看| 国产日韩欧美精品在线| 欧美一区二区三区四区夜夜大片 | 99人久久精品视频最新地址| 亚洲一区中文字幕在线观看| 国产精品久久久久9999| 亚洲伊人一本大道中文字幕| 欧美自拍偷拍午夜视频| 国产一区美女| 亚洲久色影视| 欧美色欧美亚洲另类七区| 亚洲影视在线| 久久久久久久综合色一本| 亚洲高清一二三区| 正在播放亚洲| 国产裸体写真av一区二区| 久久精品道一区二区三区| 欧美国产综合一区二区| 99国产麻豆精品| 欧美在线免费观看视频| 伊人成年综合电影网| 一区二区三区视频观看| 国产欧美日韩在线观看| 亚洲国产精品一区制服丝袜 | 久久国产精品网站| 欧美激情在线狂野欧美精品| 中日韩男男gay无套| 久久国产精品色婷婷| 亚洲成人在线| 亚洲一区二区三区高清| 国产日韩视频| 99国产精品| 国产欧美精品一区二区色综合| 亚洲成色777777女色窝| 欧美日韩精品免费观看视一区二区| 亚洲一区久久久| 欧美成人第一页| 中日韩在线视频| 久久中文字幕一区| 一本综合久久| 久久综合影音| 亚洲午夜精品福利| 老司机一区二区三区| 一区二区日韩免费看| 久久视频一区二区| 一区二区三区欧美视频| 久热精品在线| 亚洲桃花岛网站| 欧美a级大片| 亚洲综合日本| 欧美另类在线播放| 久久精品女人的天堂av| 国产精品成人av性教育| 亚洲国产高潮在线观看| 国产精品久久久久久久久久久久久 | 亚洲乱码国产乱码精品精可以看| 国产精品乱码| 亚洲乱码国产乱码精品精可以看 | 99热免费精品在线观看| 国产一区二区三区最好精华液| 亚洲网站在线看| 在线欧美不卡| 久久精品国亚洲| 宅男精品视频| 欧美日韩精品免费观看视频| 亚洲国产成人久久综合一区| 国产欧美日韩在线| 亚洲免费在线视频| 亚洲日本成人女熟在线观看|