基于MSP430與uPD720200的高速溫度采集系統(tǒng)的設(shè)計(jì)
0 引言
本文引用地址:http://www.ex-cimer.com/article/201610/308819.htmUSB3.0高速數(shù)據(jù)采集系統(tǒng),以其5Gbps的帶寬和即插即用等優(yōu)越的性能,越來越受到人們的重視。目前常用的USB3.0通信芯片主要有來自美國賽普拉斯(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ī)靈活易用,故本文采用美國TI公司最新高速的ADS7886芯片為A/D轉(zhuǎn)換芯片,最新的MSP430單片機(jī)作為主控芯片,NEC公司的UPD720200作為USB3.0通信芯片,研究和設(shè)計(jì)了一套基于USB3.0總線的溫度數(shù)據(jù)采集系統(tǒng)。經(jīng)測試,本系統(tǒng)能實(shí)現(xiàn)高速溫度數(shù)據(jù)采集。
1 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)總體框架如圖1所示。溫度傳感器采集的信號(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模塊
該模塊使用美國TI公司最新高速的A/D采樣芯片ADS7886。ADS7886是12位串行高速精密A/D芯片,為了提高系統(tǒng)的精度,我們?cè)O(shè)計(jì)采用了REF3030芯片提供3V的基準(zhǔn)電壓。A DS7886的第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)如圖3所示,主要由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傳輸模塊
該模塊如圖4所示,我們選用了NEC公司的uPD720200作為USB3.0通信芯片,其完全遵循USB3.0的通信協(xié)議和接口規(guī)范。uPD720200的引腳U3TXDP1、U3TXDN1、U3RXDP1、U3 RXDN1分別與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),并將ADS7886采集的數(shù)據(jù),通過P2.0、P2.1后上傳至uPD720200;uPD720200的SIE(串行接口引擎)再將數(shù)據(jù)送入指定的接收緩沖區(qū)內(nèi),供USB上位機(jī)讀取。
2 系統(tǒng)軟件設(shè)計(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ù)傳輸。uPD 720200完全符合USB3.0協(xié)議,固件程序主要為設(shè)置與操作其內(nèi)部的控制寄存器。NEC公司為開發(fā)者提供了功能強(qiáng)大的uPD720200 SDK開發(fā)包,可以非常方便地開發(fā)出其固件和Wind ows驅(qū)動(dòng)程序。在上位機(jī)的應(yīng)用程序的開發(fā)方面,NEC公司同樣為用戶提供了相應(yīng)的操作簡單、功能強(qiáng)大的C++編程接口庫函數(shù)。我們選用了Microsoft Visual Studio2008作為開發(fā)工具,通過相應(yīng)的庫函數(shù)與設(shè)備驅(qū)動(dòng)程序傳遞數(shù)據(jù),實(shí)現(xiàn)了實(shí)時(shí)數(shù)據(jù)采集功能。
3 總結(jié)
本文詳細(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ā)揮USB 3.0的帶寬。雖然受ADS7886芯片采樣速率的影響,沒有實(shí)現(xiàn)超速數(shù)據(jù)采集,但MSP430與uPD720200組合無疑是高速數(shù)據(jù)采集系統(tǒng)開發(fā)方面的一種低價(jià)高效的優(yōu)秀方案。
評(píng)論