基于MSP430單片機(jī)的數(shù)據(jù)采集系統(tǒng)
1 引 言
在科學(xué)研究及其他各種領(lǐng)域中,數(shù)據(jù)采集和監(jiān)測(cè)已經(jīng)成為日益重要的檢測(cè)技術(shù)。
本文引用地址:http://m.butianyuan.cn/article/81518.htm在許多工業(yè)測(cè)控機(jī)械、醫(yī)療儀器以及消費(fèi)電子產(chǎn)品中,都對(duì)數(shù)據(jù)采集系統(tǒng)的實(shí)時(shí)性與功耗提出了更高的要求:即在滿足微功耗、微型化的總體設(shè)計(jì)原則的基礎(chǔ)上,又要能實(shí)時(shí)反映現(xiàn)場(chǎng)采集數(shù)據(jù)的變化。這就對(duì)系統(tǒng)的功耗、采樣速度、數(shù)據(jù)存儲(chǔ)和傳輸速度等提出了更高的要求。然而,隨著半導(dǎo)體與微控制器技術(shù)的飛速發(fā)展,各種微電子器件性能不斷提升,功耗卻不斷降低。技術(shù)的進(jìn)步使得高速度、低功耗的數(shù)據(jù)采集系統(tǒng)得以實(shí)現(xiàn)。
本文設(shè)計(jì)的數(shù)據(jù)采集與顯示系統(tǒng)采用 TI公司研制的MSP430系列超低功耗單片機(jī)作為核心控制元件,實(shí)現(xiàn)了數(shù)據(jù)的高速采集與顯示。
系統(tǒng)主要特點(diǎn):
功耗低 所有器件均采用低功耗器件全速工作時(shí),總體功率小到1W。
速度高 由于單片機(jī)內(nèi)置DMA控制器,可以顯著提高系統(tǒng)的速度。
2 系統(tǒng)硬件結(jié)構(gòu)
系統(tǒng)在兼顧成本的同時(shí),盡量采用集成度高、功耗低、速度快的器件。系統(tǒng)結(jié)構(gòu)如圖1所示。
核心采用MSP430F169單片機(jī),MSP430系列單片機(jī)是TI公司研發(fā)的16位超低功耗單片機(jī),非常適合各種功率要求低的場(chǎng)合。MSP430F169單片機(jī)全部單周期指令,速度高,內(nèi)部自帶的12化A/D和DMA控制單元可以分別為系統(tǒng)采樣電路和數(shù)據(jù)傳輸部分采用,使得系統(tǒng)的硬件電路更加集成化、小型化。
系統(tǒng)的顯示部分采用點(diǎn)陣式LCD,實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)采集數(shù)據(jù)波形的實(shí)時(shí)監(jiān)測(cè)。LCD選用最新COG技術(shù)的點(diǎn)陣式單色黑白LCD,3.3 V 工作電壓,內(nèi)部自帶顯示控制器。他的特點(diǎn)是體積小,厚度僅為2 mm;功耗低,不用時(shí)可進(jìn)入睡眠模式;速度快,指令操作周期<1 μs;外圍電路簡單,只須外接幾個(gè)電容即可,特別適合于數(shù)字化儀表、便攜式儀表及智能化家電和嵌入式應(yīng)用系統(tǒng)中,他的核心控制器采用三星公司的S6B0724芯片,可以直接與單片機(jī)進(jìn)行8位并行或串行通信,具有很高的爽活性。
3 系統(tǒng)各模塊介紹及軟件設(shè)計(jì)
限于篇幅,僅對(duì)系統(tǒng)幾個(gè)主要模塊的功能與工作過程做介紹。
3.1 A/D模塊及其子程序設(shè)計(jì)
MSP430F169內(nèi)部的ADC12模塊能夠?qū)崿F(xiàn)12位精度的模數(shù)轉(zhuǎn)換,具有高速和通用的特性。其主要特點(diǎn)有:12位轉(zhuǎn)換精度;內(nèi)置采樣與保持電路;有多種時(shí)鐘源可提供給ADC12模塊,且模塊本身內(nèi)置時(shí)鐘發(fā)生器;內(nèi)置溫度傳感器;配有8路外部通道與4路內(nèi)部通道;內(nèi)置參考電源,且參考電壓有6種可編程的組合;模數(shù)轉(zhuǎn)換有4種模式,可靈活應(yīng)用以節(jié)省軟件量及時(shí)間;可以關(guān)閉ADC12模塊以節(jié)省系統(tǒng)能耗。
本次實(shí)驗(yàn)ADC12時(shí)鐘源選擇為MCLK=8 MHz,采樣頻率最大可以達(dá)到200 k/s,采用單通道多次轉(zhuǎn)換模式。限于篇幅,僅給出ADC12初始化子程序:
3.2 DMA模塊及其程序設(shè)計(jì)
DMA(Direct Memory Access)是直接存儲(chǔ)器訪問的意思。DMA控制器不需要CPU的干預(yù)即可提供最先進(jìn)的可配置的數(shù)據(jù)傳輸能力,從而可以解放CPU,使其不是將更多的時(shí)間浪費(fèi)在等待上,而是將更多的時(shí)間用于處理數(shù)據(jù)。DMA控制器可在內(nèi)存與內(nèi)部及外部硬件之間進(jìn)行精確的傳輸控制。DMA消除了數(shù)據(jù)傳輸延遲時(shí)間以及CPU等待等各種開銷,從而提高了MCU利用率,使信號(hào)處理能力更強(qiáng)。
MSP430F169的DMA控制器具有如下特性:
(1)擁有3個(gè)獨(dú)立的DMA通道。
(2)可以配置通道的優(yōu)先權(quán)。
(3)每個(gè)字/字節(jié)傳送只需要2個(gè)MCLK時(shí)鐘周期。
(4)字節(jié)和字可以混合傳送:字節(jié)到字節(jié)、字節(jié)到字、字到字節(jié)、字到字。
(5)可配置多種觸發(fā)源。
(6)可配置DMA觸發(fā)方式:邊沿觸發(fā)或電平觸發(fā)。
(7)4種尋址模式:固定地址到固定地址、固定地址到塊地址、塊地址到固定地址、塊地址到塊地址。
當(dāng)A/D在單通道上執(zhí)行時(shí),ADC12IFGx標(biāo)志置位表示轉(zhuǎn)化結(jié)束繼而觸發(fā)DMA操作,同時(shí)將A/D轉(zhuǎn)換后的數(shù)據(jù)存儲(chǔ)到定義在RAM中的數(shù)組r_data[]。采用DMA通道0進(jìn)行數(shù)據(jù)傳輸時(shí)的初始化程序如下所示:
3.3 單片機(jī)與LCD的接口設(shè)計(jì)
由于此CPU與LCD均采為3.3 V 工作電壓,因此單片機(jī)與LCD之間的接口不存在電平匹配問題,由于顯示器只需要接受指令,所以不需要大功率驅(qū)動(dòng),因此單片機(jī)可以直接與LCD連接。單片機(jī)I/O引腳豐富,為了提高顯示速度,采用并行接口,單片機(jī)的P4口與P5口的三根線分別作為數(shù)據(jù)線和控制線與LCD相連接,接口電路如圖2所示。
LCD接口是一種任務(wù)寄存器結(jié)構(gòu),所有輸入輸出操作均通過讀寫相應(yīng)寄存器來完成。按功能分為控制寄存器和數(shù)據(jù)寄存器,通過讀寫控制寄存器,控制顯示器工作的方式與顯示方式等。數(shù)據(jù)寄存器是單片機(jī)與LCD進(jìn)行數(shù)據(jù)交換的寄存器,用以改變LCD中顯存的內(nèi)容,從而改變最終顯示的內(nèi)容。
軟件初始化流程圖如圖3所示。
3.4 圖形顯示程序設(shè)計(jì)
為了保證顯示的及時(shí)性與連續(xù)性,同時(shí)不能超出單片機(jī)速度限制和程序容量限制,系統(tǒng)中顯示部分的軟件設(shè)計(jì)就顯得比較重要,所以程序設(shè)計(jì)要從算法的時(shí)間復(fù)雜度和空間復(fù)雜度綜合考慮。
相對(duì)于現(xiàn)在的PC機(jī),單片機(jī)的速度還是比較低的,若采用復(fù)雜曲線插補(bǔ)算法,CPU的速度顯然是不夠的,所以波形曲線的畫法采用逐點(diǎn)畫直線的方式實(shí)現(xiàn),即相鄰兩點(diǎn)之間采用畫一條直線,雖然波形稍有失真,但可以保證速度。對(duì)顯示曲線的線寬、線形等也不予設(shè)置以節(jié)省CPU的計(jì)算量。
生成直線的算法中,又有逐點(diǎn)比較法、數(shù)值微分法和Bresenham算法等,而各種算法的計(jì)算量又與具體顯示設(shè)備和顯示數(shù)據(jù)有關(guān)系。本系統(tǒng)采用了128×64點(diǎn)陣的顯示器,屏幕比較??;同時(shí)由于數(shù)據(jù)在X軸方向的增長是一種固定關(guān)系,直線的長度最大為64點(diǎn)(Y軸方向),且只存在從左下到右上和從左上到右下兩種情況。經(jīng)過理論分析與試驗(yàn)驗(yàn)證,我們采用了改進(jìn)的數(shù)值微分算法,即直線每向下一步,按照要畫直線的斜率計(jì)算下一點(diǎn)的位置,這樣一步一步逼近直線。X方向主動(dòng)遞增時(shí)的公式如下:
其中:dy/dx為要畫直線的斜率;xi為X方向增量;yi為Y方向坐標(biāo)點(diǎn)。
所有值采用整數(shù)運(yùn)算,以達(dá)到節(jié)省計(jì)算量的目的,缺點(diǎn)是圖形失真度較大。
限于篇幅,給出畫直線的程序框圖見圖4。
4 實(shí) 驗(yàn)
利用該系統(tǒng)對(duì)一種振動(dòng)信號(hào)進(jìn)行采集。并觀察顯示波形圖的變化,驗(yàn)證了在保證畫圖實(shí)時(shí)性要求的前提下系統(tǒng)能夠達(dá)到其最高采樣頻率。圖5為本系統(tǒng)采集的一個(gè)實(shí)際振動(dòng)信號(hào)隨著時(shí)間變化的波形圖。
5 結(jié) 語
實(shí)驗(yàn)表明以MSP430F169單片機(jī)實(shí)現(xiàn)的數(shù)據(jù)采集系統(tǒng),具有體積小、結(jié)構(gòu)簡單、功耗低、速度快等優(yōu)點(diǎn),不僅可以實(shí)現(xiàn)單通道、單波形顯示,而且可以通過修改軟件實(shí)現(xiàn)多通道數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)可以推廣到對(duì)多種振動(dòng)信號(hào)和電壓信號(hào)采集中去。
評(píng)論