多路數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)
掃描二維碼
隨時隨地手機(jī)看文章
摘要:設(shè)計了一個基于ARM芯片的多路數(shù)據(jù)采集系統(tǒng),可以實現(xiàn)對8路數(shù)據(jù)的采集,信號的采集方式可以是單路采集也可以是多路循環(huán)采集,控制信號可通過觸摸屏或上位機(jī)控制輸入,數(shù)據(jù)采集的結(jié)果以數(shù)字和圖形的方式在液晶屏上實時顯示。經(jīng)軟硬件綜合調(diào)試,驗證了方案的可行性。
關(guān)鍵詞:數(shù)據(jù)采集;ARM;液晶顯示器;A/D轉(zhuǎn)換;STM32
0 引言
隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展與應(yīng)用,A/D數(shù)據(jù)采集是其中一項重要的研究課題,A/D多路采集系統(tǒng)實現(xiàn)方案可以多種,通過對三種實現(xiàn)方案進(jìn)行比較,最終采用STM32系列ARM芯片進(jìn)行設(shè)計。STM32是基于ARM Cortex-M3內(nèi)核的32位處理器,具有杰出的功耗控制以及眾多的外設(shè),并具有極高的性價比,目前正逐漸搶占了電子領(lǐng)域原有的51、AVR的市場。本設(shè)計中采用STM32F103RBT6作為主控制器,該芯片配置豐富,便于今后的系統(tǒng)功能擴(kuò)展。
1 方案比較與論證
為實現(xiàn)多路數(shù)據(jù)采集要求,提出如下三種設(shè)計方案:
(1)基于單片機(jī)的數(shù)據(jù)采集系統(tǒng)
本方案采用雙單片機(jī)的方法,即在數(shù)據(jù)采集的遠(yuǎn)端、近端均采用單片機(jī)控制,遠(yuǎn)端完成數(shù)據(jù)的采集、抽樣、發(fā)送;近端完成數(shù)據(jù)的接收、校驗、處理和顯示等,鍵盤控制數(shù)據(jù)顯示。在近端與遠(yuǎn)端的通信中,采用RS 485差分方式接口,以提高通信速度與傳輸距離。該方案存在不足之處是:A/D接口和RS 485接口編程不方便,采集信號的頻率范圍和速率較低,實用性不大。
(2)基于CPLD的數(shù)據(jù)采集系統(tǒng)
采用CPLD對A/D芯片的采集控制,通過USB接口傳輸給上位機(jī),優(yōu)點是可以實現(xiàn)高的采集速率和采集精度,有著較大的實用性,但難點之處是CPLD對A/D模塊的控制,及單片機(jī)對USB的配置。
(3)基于ARM的數(shù)據(jù)采集系統(tǒng)
本方案主控器采用STM32系列的ARM芯片,方案如圖1所示。
此方案中A/D轉(zhuǎn)換器為ARM芯片內(nèi)置,采集的方式、起始時間和持續(xù)時間由上位機(jī)通過RS 232口控制,數(shù)據(jù)通過USB接口傳輸至上位機(jī)保存??紤]到使用筆記本作為控制上位機(jī)時沒有232接口,使用USB轉(zhuǎn)232的電纜提供RS 232控制信息。
由于A/D芯片內(nèi)置,芯片價格也便宜,電路設(shè)計較前面的簡單,且ARM自帶的A/D采集方式多樣,并可以通過配置ARM芯片內(nèi)相應(yīng)的寄存器就可以實現(xiàn),因此實現(xiàn)簡便??紤]到后面的擴(kuò)展需要和應(yīng)用的廣泛與實用性,本設(shè)計采用此方案。
2 系統(tǒng)設(shè)計原理
電路設(shè)計原理如圖2所示。
該電路主要由電源模塊,主控器模塊,顯示模塊,SD卡模塊,USB轉(zhuǎn)232模塊等幾個部分組成。
(1)主控制器
采用STM32F103RBT6作為MCU,其性價比很高,該芯片具有20 KB SRAM、128 KB FLASH、3個普通的16位定時器、1個16位的高級定時器、2個SPI、2個I2C、3個串口、1個USB、1個CAN、2個12位的ADC、51個通用I/O口。因為主控器STM32是3.3 V供電的,所以需要將USB的5 V電壓轉(zhuǎn)換為3.3 V。這里采用電源線性穩(wěn)壓芯片AMS1117—3.3,將5 V轉(zhuǎn)換為3.3 V。
(2)液晶顯示
電路中采用通用的LCD接口,支持8位或者16位總線或者SPI的液晶屏。該模塊采用TFTLCD面板(薄膜晶體管液晶顯示器),可以顯示16位色的真彩圖片,提高數(shù)據(jù)顯示效果,同時也可以將采集數(shù)據(jù)以圖形曲線的方式形象的表現(xiàn)出來。該模塊有2.4’/2.8’兩種大小的屏幕可選,320×240的分辨率,16位真彩顯示,自帶觸摸屏。接口采用80并口與外部連接,采用16位數(shù)據(jù)線。
(3)JTAG
采用標(biāo)準(zhǔn)的JTAG接法,STM32的SWD接口與JTAG是共用的,只要接上JTAG,也可以使用SWD模式下載并調(diào)試代碼,多數(shù)情況下使用SWD來下載調(diào)試代碼,節(jié)省資源、而且下載速度也快。
(4)SD卡
利用SD卡,擴(kuò)大容量存儲設(shè)備,用來實時保存采集的數(shù)據(jù),既可以彌補(bǔ)沒有上位機(jī)的情況,也更方便于事后對大量的數(shù)據(jù)的分析與處理。
(5)A/D采集
STM32本身擁有1~3個ADC,這些ADC可以獨(dú)立使用,也可以使用雙重模式(提高采樣率)。STM32的ADC是12位逐次逼近型的模擬數(shù)字轉(zhuǎn)換器。它有18個通道,可測量16個外部和2個內(nèi)部信號源。各通道的A/D轉(zhuǎn)換可以單次、連續(xù)、掃描或間斷模式執(zhí)行。ADC的結(jié)果可以左對齊或右對齊方式存儲在16位數(shù)據(jù)寄存器中。最大的轉(zhuǎn)換速率為1 MHz,也就是轉(zhuǎn)換時間為1μs。
3 軟硬件綜合調(diào)試結(jié)果
編寫數(shù)據(jù)采集、觸摸屏控制、上位機(jī)控制程序和液晶顯示模塊程序主要幾個模塊,將程序下載并進(jìn)行系統(tǒng)調(diào)試,最終效果如圖3,圖4所示。
系統(tǒng)可以通過觸摸屏選擇實現(xiàn)對8路數(shù)據(jù)的單路采集或多路循環(huán)采集模式,數(shù)據(jù)采集的結(jié)果可在液晶屏上顯示,也可傳輸給上位機(jī)或保存在SD卡中。通過比較被測電壓和數(shù)據(jù)采集到的電壓值,測量精度符合設(shè)計要求。
4 結(jié)語
本系統(tǒng)電路簡單,成本低,并具有一定的可擴(kuò)展性和實用性。ARM自帶的A/D采集方式多樣,可以通過配置ARM芯片內(nèi)相應(yīng)的寄存器就可以實現(xiàn),因此實現(xiàn)簡便。主控器STM32芯片是基于ARM Cortex—M3內(nèi)核的32位處理器,具有杰出的功耗控制以及眾多的外設(shè),具有極高的性價比,在工業(yè)控制、消費(fèi)類電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、無線系統(tǒng)等多個領(lǐng)域具有廣泛的應(yīng)用前景,因此值得研究和推廣。