msp430TIMER試驗(yàn)報告_第1頁
msp430TIMER試驗(yàn)報告_第2頁
msp430TIMER試驗(yàn)報告_第3頁
msp430TIMER試驗(yàn)報告_第4頁
msp430TIMER試驗(yàn)報告_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Msp430系列單片機(jī)的定時器實(shí)驗(yàn)1 .看門狗定時器(WDT)1.1 實(shí)驗(yàn)介紹計(jì)數(shù)單元 WDTCNT:不能直接通過軟件存取,必須通過 WDTCT床限制.限制存放器 WDTCTIM 8位為口令:寫5AH,讀69H低8位為WDTB作的限制命令HOLD:停止看門狗定時器工作.0 :激活;1 :停止WDTSSEL時鐘源選擇TMSEL工作模式選擇.0:看門狗;1 :定時CNTCL該位為1時,WDTCNT青除IS2、IS1、IS0:選擇看門狗定時器的定時長度1.2 實(shí)驗(yàn)?zāi)康膶W(xué)會使用看門狗定時器(WDT).熟悉WDT相關(guān)存放器1.3 實(shí)驗(yàn)原理WDT A定時器原理圖W3TOI1 * 川WDTCNT不能直接逋過

2、軟仃存取,PUCCeer(AavNWDTCTLWSE*3R 'A.CHWlirWrit? EmMe1 m坤1比咽U ,與I出二LXa yr*CLKK.GLKlEc必須通過看門狗定 時器的限制存放器 WDTCTL來限制ftDlMOLEWSTSSEL'iMH 為乂 LU3WDT二iVDHSIi¥OF 眄 &GLK2:詈 SMCLM>-用LK nqLail寫:5AH讀;69H啟、停限制看門狗模式定時器模式> VL8LKBitFieldTypsR*MtDescription158WDTPWRW69h''/Watchdog trner pas

3、swsrc. AJv.ays read as 069h. Must be /, rltten 比 5Ah: if an; other '/aue $ - rltien,占 PJC is generated.7WDTHOLDRWOhWatchdog timer ha Id, This bit slops the wntdidog timer. Setting WDTHOLD = 1 )中電n (he 詞 DT is not In u&e conseref pc er.Qb = Watchdog tlrneF Is nol stopped.1b = '/atchdog ti

4、mer Is stopMC.15WDTSSELRWQhWatchdog tmer ctack source select00b = SMCLK01b = ACLK10b=VLOCLK11bB X_CLK: VLOCLK inthat do not support X_CLK4;VDTTMSELRWOhWatchdog timer mode selectOb = Watchdog mode 7b = Interval timer mode3WDTCNTCLR榭OhWvtebdog timer counter clar. Setting WDTCNTCL = 1,恒ars the court va

5、lue to OOOOh. DTCNTCL Is autcmaScally reset Ob = Nq action W=WDTCNT = OOOOh2-0WDTtSRW4tltimer inte-va select. The5 bits 寫eled the atclidog timer interval tc set me WDTIFG tag arcir generate a PUCOQQb = V;£tchdag clock source31) iiah:12m:165 at 32.76« kHu 001b VJatehdog clock source /(2*2T)

6、 i0lk0ftm:1&s at 32.768 kHz) D1Dt> = Vl atchdog clock source ;(2*23) i00t);04m:t6» at 32.758 kHz> 011 b = Watchdog d8k source (2*19) i00h:C0m:1Es at 32.763 kHzi W0& = V.aithdog ciocK source .(2A15) |1 5 at 32,7&S kHa) 1C1b-W«teMogdMk source 儼 13) (260 rm«l32.758 kHz)

7、 IIOS = Vtchdog clock source .2*9 <15.625 mi at 32.768 kHz* 111b =:,抗thd明 clock £ourea .(2A6 (1.95 ms at 32.76E kHzi1.4 實(shí)驗(yàn)步驟(1)將PC和板載仿真器通過USB線相連;(2)翻開 CCS 集成開發(fā)工具,選擇 Project->Import Existing CCS Eclipse Project,導(dǎo)入MSP430F6638_DemoV2.011.WTD 文件夾中的工程;(3)選擇% 對該工程進(jìn)行編譯鏈接,生成.out文件.然后選擇 螫',將程序

8、下載到實(shí)驗(yàn)板中.程序下載完畢之后,可以選擇 全速運(yùn)行程序,也可以選擇-啰支一定單步調(diào)試程序,選才i F3查看具體函數(shù).也可以程序下載之后,按下回, 軟件界面恢復(fù)到原編輯程序的畫面.再按下實(shí)驗(yàn)板的復(fù)位鍵,運(yùn)行程序.(調(diào)試方式下的全速運(yùn)行和直接上電運(yùn)行程序在時序有少許差異,建議上電運(yùn)行程序).1.5 實(shí)驗(yàn)現(xiàn)象實(shí)驗(yàn)板上對應(yīng)的LED丁以一定周期閃爍.1.6 關(guān)鍵代碼實(shí)驗(yàn)#include <msp430f6638.h>void main (void)volatile unsigned int i; volatile unsigned int count=0;WDTCTL = WDTPW+WD

9、THOLD;P4DIR |= BIT1 + BIT2 + BIT3;P4OUT &=(BIT1 + BIT2 + BIT3); for (i=0;i<60000;i+) ;P4OUT |= (BIT1 + BIT2 + BIT3); for (i=0;i<60000;i+) ;WDTCTL=WDTPW+WDTIS_4;while (1) ;實(shí)驗(yàn)二:#include <msp430f6638.h>void main (void )volatile unsigned int i;volatile unsigned int count=0;/ Stop WDT/ P4

10、.1,P4.2,P4.3 set as output/ P4.1,P4.2,P4.3 set "0"延時大約60ms/ P4.1,P4.2,P4.3 set "1"延時大約60ms/啟動看門狗/ continuous loopWDTCTL = WDTPW+(WDTCTL&0xff)+WDTHOLD;/ Stop WDTP4DIR |= BIT1 + BIT2 + BIT3;/ P4.1,P4.2,P4.3 set as outputP4OUT &=(BIT1 + BIT2 + BIT3);/ P4.1,P4.2,P4.3 set &quo

11、t;0"for (i=0;i<60000;i+) ;/ 延時大約 60msP4OUT |= (BIT1 + BIT2 + BIT3);/ P4.1,P4.2,P4.3 set "1"for (i=0;i<60000;i+) ;/ 延時大約 60msWDTCTL=WDTPW+(WDTCTL&0xff)-WDTHOLD;/ 啟動看門狗while (1)/ WDTCTL=WDTPW+WDTCTL&0xff+WDTCNTCL; / 計(jì)數(shù)器清零;分析:實(shí)驗(yàn)一與實(shí)驗(yàn)二結(jié)果相同,只不過在每個周期結(jié)束啟動看門狗定時器時修改的寄存器參數(shù)不同.如果把實(shí)驗(yàn)二

12、循環(huán)中的語句去掉,那么有可能使輸出的信號周期不穩(wěn)定.通過改變循環(huán)語句中的循環(huán)次數(shù)可以改變輸出信號的頻率.2. Timer_A的時鐘源和計(jì)數(shù)模式實(shí)驗(yàn)2.1實(shí)驗(yàn)介紹MSP430系列有豐富定時器資源:看門狗定時器(WDT),根本定時器(Basic timeri ),定時器A (Timer_A),定時器B(Timer_B)等.器件因系列不同可能包含這些模塊的全部或者 局部.這些模塊除了具有定時功能外,各自還有一些特定功能.在應(yīng)用中根據(jù)需求選擇多種定時器模塊.本實(shí)驗(yàn)以定時 A (Timer_A)為根底.在MSP430F6638中,例化了 3個定時器A (Timer_A), 1 個定時器 B(Timer_

13、B).2.3實(shí)驗(yàn)原理Timer_A的時鐘源:9-8TASSELRWOhTimer_A clock source select00b 二 TAxCLK01b-ACL K10b = SMCLK11b = INCLKTimer_A的計(jì)數(shù)模式:MCModeDescription00Stop停止定時圈0JUp定時器重復(fù)從0計(jì)數(shù)到TAxCCRO10Conlinue定時薪重復(fù)從0計(jì)數(shù)到OFFFni11Upfdown定時罌重復(fù)從0計(jì)數(shù)到TAxCCRO,然后計(jì)數(shù)到02.4實(shí)驗(yàn)步驟(1)將PC和板載仿真器通過USB線相連;(2)翻開 CCS 集成開發(fā)工具,選擇 Project->Import Existin

14、g CCS Eclipse Project,導(dǎo)入MSP430F6638_DemoV2.011.Timer_A1 文件夾中的工程;(3)選擇q"對該工程進(jìn)行編譯鏈接,生成 .out文件.然后選擇 * ',將程序下載 到實(shí)驗(yàn)板中.程序下載完畢之后,可以選擇,全速運(yùn)行程序,也可以選擇單步調(diào)試程序選擇F3查看具體函數(shù).也可以程序下載之后,按下.,軟件界面恢復(fù)到原編輯程序的畫面.再按下實(shí)驗(yàn)板的復(fù)位鍵,運(yùn)行程序.(調(diào)試方式下的全速運(yùn)行和直接上電運(yùn)行程序在時序有少許差異,建議上電運(yùn)行程序).2.5實(shí)驗(yàn)現(xiàn)象對應(yīng)的LED燈以一定頻率和占空比閃爍.2.6關(guān)鍵代碼#include <msp4

15、30f6638.h>void main (void)WDTCTL = WDTPW + WDTHOLD;while (BAKCTL & LOCKIO)BAKCTL &= (LOCKIO);UCSCTL6 &=(XT1OFF);UCSCTL6 |= XCAP_3;/ Loop until XT1 fault flag is cleared/ Stop WDT/ Unlock XT1 pins for operation/ XT1 On/ Internal load capdoUCSCTL7 &=(XT2OFFG + XT1LFOFFG + DCOFFG);/

16、Clear XT2,XT1,DCO fault flagsSFRIFG1 &=OFIFG;/ Clear fault flagswhile (SFRIFG1&OFIFG);/ Test oscillator fault flagP4DIR |= BIT1+BIT2+BIT3;TA0CTL = TASSEL_1 + MC_2 + TACLR + TA舊;ACLK, continue mode, clear TAR / enable interrupt_bis_SR_register(LPM3_bits + GIE);_no_operation();/ Enter LPM3, en

17、able interrupts/ For debugger/ Timer0_A5 Interrupt Vector (TAIV) handler#pragma vector=TIMER0_A1_VECTOR_interrupt void TIMER0_A1_ISR(void)switch (_even_in_range(TA0IV,14)case 0: break ;case 2: break ;case 4: break ;case 6: break ;case 8: break ;case 10: break;case 12: break;case 14:P4OUT A= BIT1+BIT

18、2+BIT3;/ No interrupt/ CCR1 not used/ CCR2 not used/ reserved/ reserved/ reserved/ reserved/overflowbreak;default: break; ) )2.7思考題(1) Timer_A的捕獲比擬功能是如何實(shí)現(xiàn)的答:在連續(xù)計(jì)數(shù)模式下,當(dāng)計(jì)數(shù)器計(jì)數(shù)到0xffff時,會產(chǎn)生一個中斷,即可以實(shí)現(xiàn)定時功能.在增計(jì)數(shù)模式下,計(jì)數(shù)器計(jì)數(shù)到CCR0時,計(jì)數(shù)器自動清零,且產(chǎn)生一個中斷,即可實(shí)現(xiàn)捕獲比擬功能.(2)如何修改LED燈閃爍的頻率答:只需將 MC_2改為MC_1 ,再修改TA0CCR0的值即可.(3)MS

19、P430F6638有哪些定時器資源答:看門狗定時器(WDT),根本定時器(Basic timer1),定時器 A(Timer_A),定時器B(Timer_B) 等.Timer0_A5、Timer1_A3、Timer2_A3、Timer0_B7(4)根本定時器是否可以定時任意的時間答:不可以,由于當(dāng)計(jì)數(shù)器從0計(jì)數(shù)到0FFFFH到之后,發(fā)生溢出中斷,CCR0的值不可以超過 0xffffh(5)MSP430系列單片機(jī)中實(shí)現(xiàn)定時和計(jì)數(shù)的方法有什么,每種方法的特點(diǎn)是什么答:MC_0:停止計(jì)數(shù).MC_1:遞增計(jì)數(shù),計(jì)數(shù)器從 0計(jì)數(shù)到TAxCCR0 MC_2:連續(xù)計(jì)數(shù),計(jì)數(shù)器從0計(jì)數(shù)到0xffffh o M

20、C_3:計(jì)數(shù)器從0計(jì)數(shù)到TAxCCR0然后再遞減計(jì)數(shù)到 0.3. Timer_A 的 PWM 實(shí)驗(yàn)3.1 實(shí)驗(yàn)介紹TAO具備5個捕獲,比擬存放器及PWM輸出TA1 和 TA2具備3個捕擲比擬存放器及PWM輸出TBOR備7個捕狹/比擬存放器及PWM輸出實(shí)驗(yàn)程序產(chǎn)生兩路 PWM波形輸出.CCR0中的值定義了 PWM信號的周期,CCR1, CCR2中的值定義了 PWM信號的占空比.定時器使用 32KHz的ACLK作為輸入時鐘源. 時鐘周期為:15.6ms.P1.2上的占空比為 75%, P1.3上的占空比為 25%.3.2 實(shí)驗(yàn)?zāi)康?1) 了解PWM技術(shù);(2)掌握PWM限制技術(shù)的原理;(3)掌握M

21、SP430F6638產(chǎn)生PWM輸出的方法;(4)掌握示波器測量頻率的方法.3.3實(shí)驗(yàn)原理PWM 技術(shù)的三個要素:Frequency時鐘頻率(2) Duty cycle 占空比Amplitude信號幅度DutyCyclo PeriodFrequency =一PeriodAmplitudeTimefrequency = 50 HiDi/tyCycle5n T3,、OV J3 Pdiod . 20mg DgwcMe UptimePe,B = 1/fraque/)cyio mS 20 mS= "50H= 20ms3.4 實(shí)驗(yàn)步驟(1)將PC和板載仿真器通過USB線相連;(2)翻開 CCS 集

22、成開發(fā)工具,選擇 Project->Import Existing CCS Eclipse Project,導(dǎo)入 MSP430F6638_DemoV2.011.Timer_A2 文件夾中的工程;(3)選擇? '對該工程進(jìn)行編譯鏈接,生成.out文件.然后選擇 *, ,將程序下載到實(shí)驗(yàn)板中.程序下載完畢之后,可以選擇,舊全速運(yùn)行程序,也可以選擇® 3L卞-肥單步調(diào)試程序,選才i F3查看具體函數(shù).也可以程序下載之后,按下軟件界面恢復(fù)到原編輯程序的畫面.再按下實(shí)驗(yàn)板的復(fù)位鍵,運(yùn)行程序.(調(diào)試方式下的全速運(yùn)行和直接上電運(yùn)行程序在時序有少許差異,建議上電運(yùn)行程序).3.5 實(shí)驗(yàn)

23、現(xiàn)象將示波器的兩個探頭連接到 MCU的P1.2和P1.3上,調(diào)整好示波器,會觀察到如下類 似波形.PUL3.6關(guān)鍵代碼#include <msp430f6638.h>void main (void)WDTCTL = WDTPW + WDTHOLD;while (BAKCTL & LOCKIO)BAKCTL &=(LOCKIO);UCSCTL6 &=(XT1OFF);UCSCTL6 |= XCAP_3;/ Loop until XT1 fault flag is cleared do/ Stop WDT/ Unlock XT1 pins for operati

24、on/ XT1 On/ Internal load capUCSCTL7 &=(XT2OFFG + XT1LFOFFG + DCOFFG);SFRIFG1 &=OFIFG;while (SFRIFG1&OFIFG);/ Clear XT2,XT1,DCO fault flags/ Clear fault flags/ Test oscillator fault flagP1DIR |= BIT2+BIT3;P1SEL |= BIT2+BIT3;TA0CCR0 = 512-1;TA0CCTL1 = OUTMOD_7;TA0CCR1 = 384;TA0CCTL2 = OUT

25、MOD_7;TA0CCR2 = 128;TA0CTL = TASSEL_1 + MC_1 + TACLR;/ P1.2 and P1.3 output/ P1.2 and P1.3 options select/ PWM Period/ CCR1 reset/set/ CCR1 PWM duty cycle/ CCR2 reset/set/ CCR2 PWM duty cycle/ ACLK, up mode, clear TAR_bis_SR_register(LPM3_bits);_no_operation();/ Enter LPM3/ For debugger3.7思考題(1)如何將P

26、WM輸出頻率改為 5kHz,占空比為50%?答:TA0CTL = TASSEL_2 + MC_1 + TACLR; Timer_A 的時鐘源改為高頻的 SMCLE TA0CCR0 = 210-1; TA0CCR1 = 105; TA0CCR2 = 105;(2)如何將PWM輸出周期改為4s,占空比25%?答:TA0CTL = TASSEL_1 + MC_1 +ID_8+ TACLR; 對 ALCK/l分頻.TA0CCR0 =10000-1 TA0CCR1 = 2500 TA0CCR2 = 7500;(3)頻率和周期的關(guān)系是什么答:頻率是周期的倒數(shù).(4) PWM限制技術(shù)主要運(yùn)用在哪些場合答:脈

27、沖寬度調(diào)制是利用MCU的數(shù)字輸出來對模擬電路進(jìn)行限制的一種非常有效的技術(shù),廣泛應(yīng)用在從測量、通信到功率限制與變換的許多領(lǐng)域中.4.Timer_A的輸由比擬實(shí)驗(yàn)4.1 實(shí)驗(yàn)介紹Timer_A模塊可以有三種時鐘源輸入.分別是:ACLK SMCLR TAxCLK時鐘源的選擇通過 TASSEL信號來完成.被選擇的時鐘源可以直接送給TIMER模塊,或者通過ID信號進(jìn)行2,4,8分頻.選擇的時鐘信號還可以通過TAIDEX信號進(jìn)一步做2,3,4,5,6,7或者8分頻.當(dāng)TACLK信號被設(shè)置的時候,TIMER的時鐘分頻邏輯被復(fù)位.4.2 實(shí)驗(yàn)原理本實(shí)驗(yàn)中,配置定時器的相關(guān)代碼只有3行,用到了 3個相關(guān)存放器.

28、TA0CCTL0 = CCIE; CCR0 interrupt enabledTA0CCR0 = 50000;TA0CTL = TASSEL_2 + MC_1 + TACLR; / SMCLK, up mode, clear TAR15nFigure 17-H. TAXCCTLII R的機(jī)93121110CWCCIS5C59CCI電特v葡CAP附叩|砰榭M曲w糊IW制叩)口網(wǎng)怵町7e5*321QOUTWOOCClECCIOUTMVCCIFGrw-(Q| rw-(O)fw-0|f*硼fwQ)Table 17-7. TAxCCRn Register Descriptionbl IWKDeien四時

29、15-0rAkCCRQRWOiCampmne moce T-."CCRr hclcs the =Mm hr ;m compans3n tc-the Ijmr vd'ue r feli Ft _ARe; sler. TAR.Cti*r 阜 tq:理 Tte飛匚& 即押a. TW< 6三Opi曰二 irb fi4 TAxCCRrt,叫虱6r*en «例加/通prfomijrabli! 17-4. TAmCTL R妁憎t酊 DsscriptiDn削Fi«ldsOfrKriplrto15-10儂當(dāng)日rvBc!節(jié)上Oh9由tasselRW6TWner

30、A 63 MUW 回Q COIj = TAxCLK oiu s g* lOt' SMCLK 1讓二 TAxCLK?.£lbWVultfenMr. Em Ute 岫4 vtfi M INDEX bU Mtrtl 1 岫 CftviMr 16r 1M00b -1.帕=二IQb * 國tib* 15-4MCRJ."LMece Lortrtf Sfltlg VCn ""十 n Imnsr_h i& not 巾 LSe <crsen n pmverCOtiH$Lopg_» 'r-i iiaiecQtH,5 rnoce Ttm

31、&< tjt/'ts “ to TAjtCCRQ10b v Coffiruixs modp Tmv中 k> DFFFFh11b* Umnmgdv: Tm* cgE up to TAsCCRO WW tfwn WOCOCb3RoStirvwRWGRcMnec?TACkRRW*nnerdear Setfan9 ttvs bl reaeta.TAKR.M-ie limer dock dhrider topic, and V*e santdneuer Tq TACLRMto 即uftally fMfltirdn*d ai «n.1TAERW"tni&am

32、p;_A irlfriLqt BrSbte TTit M PF"*iNQF'Upt r&quAtlOb白個#tb * Ttsmpt E-aD,:0TA FGRWOhTmer_A ceriLsf *iag£» " No niE甲 perong ib rie"ip ch二4.3 實(shí)驗(yàn)步驟(1)將PC和板載仿真器通過USB線相連;(2)翻開 CCS 集成開發(fā)工具,選擇 Project->Import Existing CCS Eclipse Project,導(dǎo)入MSP430F6638_DemoV2.011.Timer_A3 文件夾中的工程;(3)選擇

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論