劉瑞芳 丁衛(wèi)平 胡文靜 梅孝安 劉鑫湖南理工學(xué)院數(shù)學(xué)學(xué)院
?
基于MSP430與uPD720200的高速溫度采集系統(tǒng)的設(shè)計(jì)
劉瑞芳 丁衛(wèi)平 胡文靜 梅孝安 劉鑫
湖南理工學(xué)院數(shù)學(xué)學(xué)院
摘要:文章研究與設(shè)計(jì)了一套基于MSP430和uPD720200 的USB3.0高速溫度采集系統(tǒng)。此系統(tǒng)采用ADS7886為A/D 轉(zhuǎn)換芯片,高速M(fèi)SP430單片機(jī)為主控CPU ,uPD720200 為USB3.0主機(jī)接口芯片,能實(shí)現(xiàn)高速實(shí)時(shí)溫度數(shù)據(jù)采集。
關(guān)鍵字:USB3.0 uPD720200 MSP430 數(shù)據(jù)采集
USB3.0高速數(shù)據(jù)采集系統(tǒng),以其5Gbps 的帶寬和即插即用等優(yōu)越的性能,越來越受到人們的重視。目前常用的USB3.0通信芯片主要有來自美國(guó)賽普拉斯(CYPRESS)公司開發(fā)的 EZ USB FX3 系列芯片和日本NEC公司開發(fā)的uPD720200 系列芯片。二者不僅都具有集成度高、功能強(qiáng)大、兼容USB2.0等優(yōu)點(diǎn),而且兩個(gè)廠家都提供了功能強(qiáng)大的開發(fā)工具包,能極大縮短開發(fā)周期,而深受開發(fā)者喜愛。目前一些采集系統(tǒng)采用傳統(tǒng)的51系列單片機(jī)為主控芯片,則不能充分發(fā)揮USB3.0的帶寬,性能不佳。雖然CPLD芯片可以工作在很高的頻率,但不及單片機(jī)靈活易用,故本文采用美國(guó)TI公司最新高速的ADS7886芯片為A/D 轉(zhuǎn)換芯片,最新的MSP430單片機(jī)作為主控芯片,NEC公司的UPD720200作為USB3.0通信芯片,研究和設(shè)計(jì)了一套基于USB3.0總線的溫度數(shù)據(jù)采集系統(tǒng)。經(jīng)測(cè)試,本系統(tǒng)能實(shí)現(xiàn)高速溫度數(shù)據(jù)采集。
溫度傳感器采集的信號(hào)經(jīng)A/D 轉(zhuǎn)換芯片ADS7886轉(zhuǎn)換為數(shù)字信號(hào)后,送入主控芯片MSP430,再經(jīng)處理后發(fā)送到USB3.0主機(jī)接口芯片uPD720200 ,最后數(shù)據(jù)以5Gbps 的速度送入到USB主機(jī)。
1.1 A/D模塊
該模塊使用美國(guó)TI 公司最新高速的A/D 采樣芯片ADS7886。ADS7886是12位串行高速精密A/D 芯片,為了提高系統(tǒng)的精度,我們?cè)O(shè)計(jì)采用了REF 3030芯片提供3V的基準(zhǔn)電壓。ADS7886的第3腳為模擬信號(hào)輸入端口,第4腳為1MHz 的工作時(shí)鐘信號(hào)輸入端口,第6腳為片選信號(hào)端,第5腳為模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)后的輸出端,供MSP430單片機(jī)讀取。
1.2 MSP430最小系統(tǒng)模塊
MSP430的最小系統(tǒng),主要由MSP430單片機(jī)、晶振電路和電源構(gòu)成。其中P1.4 為ADC7886串行數(shù)據(jù)輸入端,P2.0 ~P2.3用于連接USB3.0通信芯片uPD720200 ,P1.6 和P1.7 連接兩個(gè)LED 指示燈,用來顯示當(dāng)前的工作狀態(tài)。
1.3 USB 傳輸模塊
我們選用了NEC公司的PD720200作為USB3.0通信芯片,其完全遵循USB3.0的通信協(xié)議和接口規(guī)范。uPD720200 的引腳U3TXDP1、U3TXDN1、U3RXDP1、U3RXDN1分別與MSP430的引腳P2.0 ~P2.3 連接。其工作原理如下:采集數(shù)據(jù)時(shí),UPD720200收到用戶的數(shù)據(jù)采集請(qǐng)求后,將形成相應(yīng)的控制信號(hào),通過P2.2 、P2.3 下傳遞給MSP430;MSP430隨后對(duì)ADS7886發(fā)出采集數(shù)據(jù)的控制信號(hào),并將ADS788采集的數(shù)據(jù),通過P2.0 、 P2.1 后上傳至uPD720200 ;uPD720200 的SIE(串行接口引擎)再將數(shù)據(jù)送入指定的接收緩沖區(qū)內(nèi),供USB 上位機(jī)讀取。
系統(tǒng)軟件的開發(fā)包含了MSP430和uPD720200 的固件程序開發(fā)、uPD720200 的windows驅(qū)動(dòng)程序開發(fā)以及USB上位機(jī)應(yīng)用程序的開發(fā)。我們可以利用NEC公司提供的開發(fā)包,大大縮短開發(fā)周期,提高開發(fā)效率。MSP430固件程序主要完成對(duì)A/D 芯片ADS7886的控制和對(duì)uPD720200 芯片的通信,其將ADS7886芯片采集的數(shù)據(jù)傳送給uPD720200 。MSP430的固件開發(fā)需對(duì)相應(yīng)的引腳和時(shí)序進(jìn)行定義,為此我們采用了C51 語言編寫,開發(fā)環(huán)境為Keil uVision4.0。uPD720200固件程序的主要功能是讓其將MSP430芯片傳來的數(shù)據(jù)傳輸?shù)缴衔粰C(jī),實(shí)現(xiàn)超高速數(shù)據(jù)傳輸。uPD720200 完全符合USB3.0協(xié)議,固件程序主要為設(shè)置與操作其內(nèi)部的控制寄存器。NEC公司為開發(fā)者提供了功能強(qiáng)大的uPD720200 SDK開發(fā)包,可以非常方便地開發(fā)出其固件和Windows驅(qū)動(dòng)程序。在上位機(jī)的應(yīng)用程序的開發(fā)方面,NEC公司同樣為用戶提供了相應(yīng)的操作簡(jiǎn)單、功能強(qiáng)大的C++編程接口庫(kù)函數(shù)。我們選用了Microsoft Visual Studio2008作為開發(fā)工具,通過相應(yīng)的庫(kù)函數(shù)與設(shè)備驅(qū)動(dòng)程序傳遞數(shù)據(jù),實(shí)現(xiàn)了實(shí)時(shí)數(shù)據(jù)采集功能。
本文詳細(xì)介紹了采用uPD720200 為接口USB3.0芯片、MSP430為主控芯片,設(shè)計(jì)與開發(fā)了一套USB3.0溫度采集傳輸系統(tǒng)。NEC公司為uPD720200提供了完整的SDK開發(fā)包,縮短了開發(fā)周期。我們采用的MSP430系列單片機(jī)在25MHz晶體的驅(qū)動(dòng)下,實(shí)現(xiàn)40ns 的指令周期,再加上16位的數(shù)據(jù)寬度,其運(yùn)算速度相對(duì)傳統(tǒng)的51系列單片機(jī)非常快,能充分發(fā)揮USB3.0的帶寬。雖然受ADS7886芯片采樣速率的影響,沒有實(shí)現(xiàn)超速數(shù)據(jù)采集,但MSP430與uPD720200 組合無疑是高速數(shù)據(jù)采集系統(tǒng)開發(fā)方面的一種低價(jià)高效的優(yōu)秀方案。
參考文獻(xiàn)
[1] 劉瑞芳,等.基于USB3.0高速數(shù)據(jù)采集系統(tǒng)的研究與設(shè)計(jì)[J].現(xiàn)代計(jì)算機(jī),2011,12(8):121-125
[2] 沈建華.MSP430系列16位超低功耗單片機(jī)原理與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008 .
[3] NEC Company. UPD720200 Preliminary User’s Manual[R]. 2010.