??? 摘? 要: 介紹了應(yīng)用MSP430F149芯片開(kāi)發(fā)超低頻" title="超低頻">超低頻波形發(fā)生器" title="波形發(fā)生器">波形發(fā)生器的設(shè)計(jì)原理及其在生理濾波器調(diào)試中的應(yīng)用。
??? 關(guān)鍵詞: MSP430F149芯片? 單片機(jī)? 波形發(fā)生器? 濾波系統(tǒng)
?
在載人運(yùn)輸系統(tǒng)振動(dòng)分析儀" title="分析儀">分析儀中常用超低頻波形發(fā)生器作為仿真的信號(hào)源,。要求在0.1Hz~100Hz范圍內(nèi)穩(wěn)定工作,,波形失真小,且能以0.1Hz為步長(zhǎng)細(xì)調(diào)。傳統(tǒng)超低頻波形發(fā)生器設(shè)計(jì)中存在著很多的不足:(1)應(yīng)用通用電路,元器件多,尤其是電容的體積大,,且波形的穩(wěn)定性差、失真大,,調(diào)節(jié)上極不方便;(2)應(yīng)用專用電路,,如ICL8038、MAX038,,其失真和穩(wěn)定性方面有明顯提高,,但在超低頻應(yīng)用上仍不合適。而且電路的調(diào)節(jié)器件多,,對(duì)電源的要求較高,,代價(jià)較大。鑒于目前開(kāi)發(fā)的振動(dòng)分析儀常采用微控制器,,利用其富余的軟硬件資源,,建立調(diào)節(jié)方便、高精度的超低頻波形發(fā)生器,,極有推廣價(jià)值,。
根據(jù)《鐵路車(chē)輛內(nèi)旅客振動(dòng)舒適性評(píng)價(jià)準(zhǔn)則》UIC513國(guó)際標(biāo)準(zhǔn)開(kāi)發(fā)的SSD-J-2振動(dòng)舒適度測(cè)量?jī)x是基于MSP430F149的三維振動(dòng)便攜式分析儀,內(nèi)含上下,、左右,、前后振動(dòng)的生理濾波器。為了調(diào)整和標(biāo)定這組生理濾波器的精度,,利用該單片機(jī)的一個(gè)PWM輸出端配上∏型RC濾波,,在軟件支持下構(gòu)成調(diào)節(jié)方便的超低頻波形發(fā)生器。經(jīng)實(shí)用表明其性能達(dá)到UIC513標(biāo)準(zhǔn)的技術(shù)要求,。
1 MSP430F149的內(nèi)部結(jié)構(gòu)
MSP430F149是美國(guó)TEXAS INSTRUCMENTS公司最新推出的16位超低功耗" title="超低功耗">超低功耗混合信號(hào)單片機(jī),,帶有Flash存儲(chǔ)器,具備很強(qiáng)的靈活性,,方便修改代碼及產(chǎn)品售后升級(jí)。它采用精簡(jiǎn)指令集(RISC),,125ns指令周期,,大部分的指令在一個(gè)指令周期內(nèi)完成。1.8V~3.6V的供電電壓,,其超低功耗(供電電壓2.2V,,工作頻率32kHz時(shí),,工作電流為7μA;供電電壓2.2V,工作頻率1MHz時(shí),,工作電流為250μA,。)使超低頻波形發(fā)生器可被設(shè)計(jì)成電池供電且長(zhǎng)時(shí)間工作的系統(tǒng)。MSP430F149內(nèi)含一個(gè)具有8個(gè)外部通道的12位高性能A/D轉(zhuǎn)換器,,一個(gè)具有自動(dòng)掃描功能的容量為16個(gè)字節(jié)的可編程緩沖器,,片內(nèi)參考電壓,一個(gè)溫度傳感器以及電池低壓時(shí)的檢測(cè)電路;內(nèi)部具有兩個(gè)定時(shí)器:帶有7個(gè)捕獲/比較寄存器的16位Timer_B和帶有3個(gè)捕獲/比較寄存器的16位Timer_A,,在比較模式下可以產(chǎn)生PWM信號(hào),,控制DCO的頻率,利用它們可以滿足要求;該芯片具有60KB的閃速存儲(chǔ)器,,2KB RAM,,采用串行在線編程方式,為用戶修改程序和控制參數(shù)帶來(lái)靈活的空間,,而且內(nèi)部的安全保密熔絲可使程序不被非法拷貝,。此外,MSP430F149具有強(qiáng)大的中斷功能,,48個(gè)I/O引腳,,兩個(gè)串行通訊接口,10萬(wàn)次的擦寫(xiě),,超強(qiáng)的抗干擾能力,。
2 超低頻波形發(fā)生器的電路設(shè)計(jì)原理
用于人體乘坐的交通運(yùn)輸工具中的振動(dòng)分析儀對(duì)信號(hào)有嚴(yán)格的濾波要求。UIC513標(biāo)準(zhǔn)中對(duì)Z方向(上,、下)振動(dòng)信號(hào)規(guī)定按圖1的濾波計(jì)權(quán)曲線進(jìn)行濾波,,其濾波頻帶為0.4Hz~16Hz,并且具有臺(tái)階性,。重要的是檢驗(yàn)濾波的效果是評(píng)價(jià)振動(dòng)舒適性的前提,,濾波電路只有經(jīng)過(guò)嚴(yán)格的標(biāo)定校調(diào)后方能投入使用,所以需要采用低失真,、超低頻正弦波" title="正弦波">正弦波信號(hào)源來(lái)標(biāo)定電路,。應(yīng)用MSP430F149進(jìn)行設(shè)計(jì),電路十分簡(jiǎn)單,。產(chǎn)生的波形精度取決于脈寬計(jì)數(shù)器的精度,,最高可達(dá)16位,頻率取決于軟件所設(shè)計(jì)正弦表的大小,、系統(tǒng)頻率以及讀取正弦表的時(shí)間長(zhǎng)短,。應(yīng)該注意的是所設(shè)計(jì)的頻率應(yīng)該比需要的頻率略高一些,這樣由脈寬調(diào)制信號(hào)到正弦波信號(hào)的濾波電路階數(shù)可以降低,。其電路結(jié)構(gòu)如圖2,。
?
?
?
3 用MSP430F149實(shí)現(xiàn)PWM功能的軟件設(shè)計(jì)
在該超低頻波形發(fā)生器的軟件設(shè)計(jì)中,,主要應(yīng)用到了以下幾個(gè)功能模塊:Timer_B定時(shí)器、Timer_A定時(shí)器,、CPU寄存器,、片內(nèi)的數(shù)字控制晶振以及XT1低功耗振蕩器,其主程序流程圖如圖3所示,。
?
?
3.1 穩(wěn)定DCO頻率模塊
DCO實(shí)質(zhì)上是一個(gè)RC振蕩器,,具有RC振蕩器的特點(diǎn)。其在頻率的設(shè)置和轉(zhuǎn)換上不準(zhǔn)確,,但由于它是數(shù)字控制的振蕩器,,可以通過(guò)一個(gè)已知的頻率穩(wěn)定的晶振如32768Hz手表晶振來(lái)進(jìn)行校準(zhǔn),使DCO達(dá)到準(zhǔn)確的頻率,。因?yàn)镸SP430F149不含有鎖頻環(huán)數(shù)字邏輯,,所以只有通過(guò)軟件進(jìn)行“軟鎖頻”校準(zhǔn)DCO,這十分重要,。
程序如下:
Setup_TA????? mov??????? #TASSEL1+TACLR,,&TACTL???
???????????????????????????????????????????????? ;設(shè)置TA時(shí)鐘SMCLK
Setup_CC2????? mov??????? #CCIS0+CM0+CAP,&CCTL2???
???????????????????????????????????????????????? ;設(shè)置CCR2,,輸入信號(hào):
???????????????????????????????????????????????? ;ACLK,,捕獲模式
???????????????bis????????#MC1,&TACTL
???????????????????????????????????????????????? ;設(shè)置Timer_A:連續(xù)模式
Test_DCO???????bit????????#CCIFG,,&CCTL2?????
???????????????????????????????????????????????? ;檢測(cè)捕獲標(biāo)志位
???????????????jz?????????Test_DCO
???????????????bic????????#CCIFG,,&CCTL2???????? ;清除標(biāo)志位
AdjDCO???????? mov??????? &CCR2,R14
???????????????????????????????????????????????? ;R14=捕獲的SMCLK值
???????????????sub????????R15,,R14?????????????? ;R14=捕獲SMCLK的差值
???????????????mov??????? &CCR2,,R15
????????????????????????????????????????? ?????? ;R15=上次捕獲的SMCLK值
???????????????cmp??????? #Delta,R14??????????? ;Delta=SMCLK/ACLK
???????????????jlo????????IncDCO????????
???????????????jeq????????DoneFLL???????
DecDCO???????? dec.b????? &DCOCTL??????????????? ;調(diào)整DCO
???????????????jmp????????Test_DCO????????????
IncDCO???????? inc.b??????&DCOCTL????
???????????????jmp????????Test_DCO????????????
DoneFLL??????? clr????????&CCTL2???????????????? ;停止CCR2
???????????????clr????????&TACTL???????????????? ;停止Timer_A
3.2 產(chǎn)生PWM的Timer_B中斷程序
改變正弦波的頻率需要改變脈寬信號(hào)輸出的頻率,,有3種不同的方法:(1)可改變精度,,進(jìn)一步改變正弦表的大小,增大或減小輸出一個(gè)正弦波的周期;(2)可改變主頻,,來(lái)延長(zhǎng)指令的執(zhí)行時(shí)間,,進(jìn)而延長(zhǎng)周期;(3)利用中斷處理延時(shí)讀取正弦表的方法來(lái)控制輸出的頻率。3種方法均十分簡(jiǎn)便,,只需改變幾個(gè)參數(shù)即可,。這里采用的是最后一種方法。
程序如下:
TB_ISR?? inc?????R11? ?????????? ;R11,,R12用于改變產(chǎn)生正弦
???????????????????????????????? ;波的頻率,,延遲讀取正弦表
?????????cmpR11, R12 ?
?????????jne???? RT????????? ?
?????????incd??? R15????????????? ;增加指針R15,指向正弦表?
????????????????????????????????? ;的下一個(gè)正弦值?
???????? and??? #Number, R15????? ;Number=正弦表大小×2?
?????????mov??? Sine_Tab(R15),,&TBCCR1?
??????????????????????????????????;Sine_Tab為正弦表指針,,TBCCR1
RT???????reti?????????????????? ? ;移入新值
4 以MSP430F149為核心的振動(dòng)分析儀的生理濾波器的自校系統(tǒng)
??? 由于MSP430F149提供了強(qiáng)大的功能,可以用來(lái)開(kāi)發(fā)便攜式振動(dòng)分析儀,。超低頻波形發(fā)生器正是在MSP430F149基礎(chǔ)上開(kāi)發(fā)的,,結(jié)構(gòu)簡(jiǎn)單,能夠?qū)φ駝?dòng)分析儀的生理濾波電路進(jìn)行校驗(yàn),,完成了儀器的自校驗(yàn)功能,。其系統(tǒng)結(jié)構(gòu)圖如圖4所示。
?
?
使用MSP430F149設(shè)計(jì)正弦波發(fā)生器,,利用了該單片機(jī)所提供的特殊功能,,使得電路簡(jiǎn)單,調(diào)節(jié)方便,,而且精度可控,。通過(guò)驗(yàn)證可以產(chǎn)生不同頻率、失真很小的波形,,可以作為模擬電路的輸入源對(duì)其標(biāo)定,。除此之外還可以進(jìn)一步利用該單片機(jī)產(chǎn)生諧波信號(hào)、直流信號(hào)等,,應(yīng)用到更加廣闊的領(lǐng)域,。
?
參考文獻(xiàn)
1 胡大可.MSP430系列超低功耗16位單片機(jī)原理與應(yīng)用,北京:北京航空航天大學(xué)出版社,,2000
2 MSP430x1xx Family User's Guide,, 2000
3 MSP430x13x,MSP430x14x Data sheet,, 2000
4 Controlling the DCO of the MSP430x11x,, 2000
5 UIC Code 513,Guidelines for evaluating passenger comfort in relation to vibration in railway vehicles,,1994