實(shí)驗(yàn)4-PWM控制技術(shù)_第1頁(yè)
實(shí)驗(yàn)4-PWM控制技術(shù)_第2頁(yè)
實(shí)驗(yàn)4-PWM控制技術(shù)_第3頁(yè)
實(shí)驗(yàn)4-PWM控制技術(shù)_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

實(shí)驗(yàn)4PWM(PulseWidthModulation)控制技術(shù)占空比〔DutyRatio,DutyCycle〕:指脈沖信號(hào)的通電時(shí)間與通電周期之比。〔高電平在一個(gè)周期之內(nèi)所占的時(shí)間比率。〕PWM是一種對(duì)模擬信號(hào)進(jìn)行數(shù)字編碼的方法。通過高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來對(duì)一個(gè)具體模擬信號(hào)的電平進(jìn)行編碼。MSP430的定時(shí)器資源:WDT,BasicTimer,Timer_A〔該系列器件均有〕,Timer_B,Timer_D,實(shí)時(shí)時(shí)鐘等。Timer_A0 Timer0_A5〔5個(gè)CCR〕Timer_A1 Timer1_A3〔3個(gè)CCR〕Timer_A2 Timer2_A3〔3個(gè)CCR〕Timer_ARegisters:TAxCTL Timer_AxControlRegisterTAxCCTL0-TAxCCTL6 Timer_A捕獲/比擬控制存放器0-6TAxR Timer_AxCounterRegisterTAxCCR0-TAxCCR6 Timer_A捕獲/比擬存放器0-6TAxEX0 Timer_A擴(kuò)展存放器0TAxIV Timer_A中斷向量存放器〔1〕TAxCTL,Timer_AxControlRegisterTASSEL bit9-bit8 Timer_AclocksourceselectID bit7-bit6 Inputdivider〔1/2/4/8〕MC bit5-bit4 ModecontrolTACLR bit2 Timer_AclearTAIE bit1 Timer_AinterruptenableTAIFG bit0 Timer_Ainterruptflag以上位存放器的復(fù)位值均為0hTAxCCTLn,Timer_AxCapture/CompareControlnRegisterCM bit15-bit14 CapturemodeCCIS bit13-bit12 Capture/compareinputselectSCS bit11 SynchronizecapturesourceSCCI bit10 Synchronizedcapture/compareinputCAP bit8 Capturemode〔0,比擬模式;1,捕獲模式〕OUTMOD bit7-bit5 OutputmodeCCIE bit4 Capture/compareinterruptenable〔0,禁止;1,使能〕CCI bit3 Capture/compareinputOUT bit2 OutputCOV bit1 CaptureoverflowflagCCIFG bit0 Capture/compareinterruptflag以上位存放器的復(fù)位值均為0hTAxR,Timer_AxCounterRegister,thecountofTimer_ATAxCCRn,Timer_ACapture/ComparenRegister比擬模式:TAxCCRn與TAxR比擬捕獲模式:滿足捕獲條件時(shí),硬件自動(dòng)將計(jì)數(shù)器TAxR值寫入TAxCCRnTAxEX0,Timer_AxExpansion0RegisterTAIDEX bit2-bit0 Inputdividerexpansion〔1/2/3/4/5/6/7/8〕TAxIV,Timer_AxInterruptVectorRegister,bit15-bit0[由于,Timer_A的中斷,可由計(jì)數(shù)器溢出引起,也可來自捕獲/比擬器REG,因此]TAxIV用于確定Timer_A中斷請(qǐng)求的中斷源。注:OUTMOD_7,復(fù)位/置位:TAxR=TAxCCRn時(shí),復(fù)位;TAxR=TAxCCR0時(shí),置位。設(shè)計(jì)參考代碼當(dāng)Timer_A的計(jì)數(shù)器工作在增計(jì)數(shù)方式,輸出采用OUTNOD_7〔復(fù)位/置位〕時(shí),可用TAxCCR0控制PWM波形的周期,用某個(gè)TAxCCRn控制占空比,這樣Timer_A就可用產(chǎn)生任意占空比的PWM波形。圖Timer_A產(chǎn)生的PWM//*******************************************************************************//MSP430F66xDemo-Timer0_A5,PWMTA1.1-2,UpMode,32kHzACLK////Description:ThisprogramgeneratestwoPWMoutputsonP1.2,1.3using//Timer1_Aconfiguredforupmode.ThevalueinCCR0,512-1,definesthePWM//periodandthevaluesinCCR1andCCR2thePWMdutycycles.Using32kHz//ACLKasTACLK,thetimerperiodis(1/32k)*512=15.625mswitha75%duty//cycleonP1.2and25%onP1.3.NormaloperatingmodeisLPM3.//ACLK=TACLK=LFXT1=32768Hz,MCLK=SMCLK=DCOCLK=32*ACLK=defaultDCO~1.045MHz.//*******************************************************************************// 這個(gè)程序產(chǎn)生兩路PWM波形輸出。CCR0中的值定義了PWM信號(hào)的周期,CCR1,CCR2中的值// 定義了PWM信號(hào)的占空比。定時(shí)使用32K的ACLK做為輸入時(shí)鐘源,時(shí)鐘周期為:15.625ms// P1.2上PWM的占空比為75%,P1.3上PWM的占空比為25%。//////MSP430F66x/////|\||//|||//--|RST|//||//|P1.2/TA0.1|-->CCR1-75%PWM//|P1.3/TA0.2|-->CCR2-25%PWM////******************************************************************************#include<msp430f6638.h>voidmain(void){//************************************************************************* WDTCTL=WDTPW+WDTHOLD; //StopWDT//BAKCTL=1Ch,BatteryBackupControl(Page123)while(BAKCTL&LOCKIO) //UnlockXT1pinsforoperation BAKCTL&=~(LOCKIO);//LoopuntilXT1faultflagiscleareddo {//UCSCTL7&=~(XT2OFFG+XT1LFOFFG+DCOFFG); //ClearXT2,XT1,DCOfaultflags UCSCTL7&=~(XT2OFFG+XT1HFOFFG+XT1LFOFFG+DCOFFG); SFRIFG1&=~OFIFG; //ClearfaultflagsinSFR }while(SFRIFG1&OFIFG); //Testoscillatorfaultflag UCSCTL6&=~(XT1OFF); //XT1On UCSCTL6|=XCAP_3; //Internalloadcap//*************************************************************************//P1.2/TA0.1(TimerTA0CCR1)/S37;P1.3/TA0.2(TimerTA0CCR2)/S36 P1DIR|=BIT2+BIT3; //P1.2andP1.3output P1SEL|=BIT2+BIT3; //P1.2andP1.3optionsselect TA0CTL=TASSEL_1+MC_1+TACLR; //ACLK,upmode,clearTAxR//TA0CCTL0=OUTMOD_0; //(default)OUTbitvalue//給TAxCCR0寫入非零值時(shí),它將從零開始進(jìn)行遞增計(jì)數(shù) TA0CCR0=512-1; //PWMPeriodRegisterTAxCCR0 TA0CCTL1=OUTMOD_7; //CCR1reset/set TA0CCR1=384; //CCR1PWMdutycycle,384/512=0.75 TA0CCTL2=OUTMOD_7; //CCR2reset/set TA0CCR2=128

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論