第三章MSP基本外設(shè)(定時(shí)器)_第1頁
第三章MSP基本外設(shè)(定時(shí)器)_第2頁
第三章MSP基本外設(shè)(定時(shí)器)_第3頁
第三章MSP基本外設(shè)(定時(shí)器)_第4頁
第三章MSP基本外設(shè)(定時(shí)器)_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

3.4定時(shí)器(Timer)本節(jié)內(nèi)容MSP430定時(shí)功能及其實(shí)現(xiàn)看門狗定時(shí)器WDT的操作看門狗定時(shí)器的中斷控制功能看門狗應(yīng)用舉例16位定時(shí)器A定時(shí)器A的特性Timer_A結(jié)構(gòu)Timer_A工作原理Timer_A典型應(yīng)用16位定時(shí)器B16位定時(shí)器D定時(shí)器庫函數(shù)MSP430定時(shí)功能及其實(shí)現(xiàn)(1/4)定時(shí)功能模塊是MSP430應(yīng)用系統(tǒng)中經(jīng)常用到的重要部分,可用來實(shí)現(xiàn)定時(shí)控制、延遲、頻率測(cè)量、脈寬測(cè)量和信號(hào)產(chǎn)生、信號(hào)檢測(cè)等等。一般來說,MSP430所需的定時(shí)信號(hào)可以用軟件和硬件兩種方法來獲得。MSP430定時(shí)功能及其實(shí)現(xiàn)(2/4)軟件定時(shí)

軟件定時(shí)是根據(jù)所需要的時(shí)間常數(shù)來設(shè)計(jì)延遲子程序,當(dāng)時(shí)間常數(shù)比較大時(shí),常常將延遲子程序設(shè)計(jì)為循環(huán)程序,通過循環(huán)常數(shù)和循環(huán)體內(nèi)的指令來確定延遲時(shí)間,設(shè)計(jì)者要對(duì)這些指令的執(zhí)行時(shí)間進(jìn)行嚴(yán)密的計(jì)算或精確的測(cè)量。優(yōu)點(diǎn):節(jié)省硬件,所需的時(shí)間可以靈活調(diào)整。缺點(diǎn):執(zhí)行延遲程序期間,CPU一直被占用,降低了CPU的利用率,也不容易提供多作業(yè)環(huán)境。硬件定時(shí)硬件定時(shí)是指利用專門定時(shí)器件作為主要實(shí)現(xiàn)器件,根據(jù)所需的定時(shí)時(shí)間,用指令對(duì)定時(shí)器設(shè)置定時(shí)常數(shù),并用指令啟動(dòng)定時(shí)器,當(dāng)定時(shí)器計(jì)數(shù)到確定值時(shí),自動(dòng)產(chǎn)生定時(shí)輸出。優(yōu)點(diǎn):計(jì)數(shù)時(shí)不占用CPU時(shí)間,利用定時(shí)器產(chǎn)生中斷請(qǐng)求,還可以建立多作業(yè)環(huán)境。MSP430定時(shí)功能及其實(shí)現(xiàn)(3/4)MSP430系列有豐富定時(shí)器資源:看門狗定時(shí)器(WDT),定時(shí)器A(Timer_A),定時(shí)器B(Timer_B)定時(shí)器D(Timer_D)和實(shí)時(shí)時(shí)鐘等。MSP430x不同系列的單片機(jī)包含有不同的定時(shí)器模塊。每種定時(shí)器除了具有定時(shí)功能外,各自還有一些特定的用途,在應(yīng)用中根據(jù)需求來選擇定時(shí)器模塊。MSP430定時(shí)功能及其實(shí)現(xiàn)(4/4)MSP430系列定時(shí)器部件功能,如下表所示:定時(shí)器功能看門狗定時(shí)器基本定時(shí)、當(dāng)程序發(fā)生錯(cuò)誤時(shí)執(zhí)行一個(gè)受控的系統(tǒng)重啟動(dòng)基本定時(shí)器基本定時(shí)、支持軟件和各種外圍模塊工作在低頻率、低功耗條件下定時(shí)器A基本定時(shí)、支持同時(shí)進(jìn)行的多種時(shí)序控制、多個(gè)捕獲/比較功能和多種輸出波形(PWM),可以以硬件方式支持串行通信。定時(shí)器B基本定時(shí)、功能基本同定時(shí)器A,但比定時(shí)器A靈活,功能更強(qiáng)大定時(shí)器D基本定時(shí)、功能基本同定時(shí)器A,但比定時(shí)器A靈活,功能更強(qiáng)大看門狗定時(shí)器的概述◆看門狗定時(shí)器的主要作用:用于在“程序跑飛”時(shí),WDT就會(huì)產(chǎn)生溢出,從而產(chǎn)生系統(tǒng)復(fù)位,CPU需要重新運(yùn)行用戶程序,這樣程序就可以又回到正常運(yùn)行狀態(tài)?!鬗SP430F6638單片機(jī)的看門狗模塊具有以下特性:32種軟件可選的定時(shí)時(shí)間看門狗工作模式定時(shí)器工作模式帶密碼保護(hù)的WDT控制寄存器時(shí)鐘源可選擇為降低功耗,可停止時(shí)鐘失效保護(hù)看門狗定時(shí)器寄存器(1/3)◆計(jì)數(shù)單元WDTCNT

WDTCNT是不能通過軟件直接訪問的32位增計(jì)數(shù)器,由MSP430所選定的時(shí)鐘電路產(chǎn)生的固定周期脈沖信號(hào)對(duì)計(jì)數(shù)器進(jìn)行加法計(jì)數(shù),如果計(jì)數(shù)器事先被預(yù)置的初始狀態(tài)不同,那么從個(gè)開始計(jì)數(shù)到計(jì)數(shù)溢出所用的時(shí)間就不同?!?/p>

控制寄存器WDTCTL

WDTCTL由兩部分組成:高8位被用作密鑰;低8位是對(duì)WDT操作的控制命令。要寫入操作WDT的控制命令,出于安全原因必須先正確寫入高字節(jié)看門狗密鑰5AH,如果密鑰寫錯(cuò)將觸發(fā)PUC系統(tǒng)復(fù)位。讀WDTCTL時(shí)不需要密鑰,高字節(jié)讀取結(jié)果為69H??撮T狗定時(shí)器寄存器(2/3)高8位:

◆WDTPW:Bits15~8看門狗密鑰,讀出值0x69,寫時(shí)必須為0x5A,否則將產(chǎn)生PUC。低8位:

WDTHOLD:Bit70沒有禁用看門狗,1禁用看門狗

WDTSSEL:Bits6~5看門狗時(shí)鐘源選擇

00SMCLK01ACLK

10VLOCLK11X_CLK例:WDTCTL=WDTPW+WDTSSEL;//選擇X_CLK時(shí)鐘源

◆WDTTMSEL:Bit4工作模式選擇

0看門狗模式,1間隔定時(shí)器模式

例:WDTCTL=WDTPW+WDTTMSEL;//定時(shí)器模式

WDTCNTCL:Bit3看門狗計(jì)數(shù)器清零

0無任何操作,1WDTCNT計(jì)數(shù)器清0

例:WDTCTL=WDTPW+WDTCNTCL;//對(duì)看門狗計(jì)數(shù)器清零看門狗定時(shí)器寄存器(3/3)◆WDTIS:Bits2~0看門狗定時(shí)間隔選擇

000看門狗時(shí)鐘源/(2^31)(18h:12m:16s基于32.768KHz)

001看門狗時(shí)鐘源/(2^27)(01h:08m:16s基于32.768KHz)

010看門狗時(shí)鐘源/(2^23)(00h:04m:16s基于32.768KHz)

011看門狗時(shí)鐘源/(2^19)(00h:00m:16s基于32.768KHz)

100看門狗時(shí)鐘源/(2^15)(1s基于32.768KHz)

101看門狗時(shí)鐘源/(2^13)(250ms基于32.768KHz)

110看門狗時(shí)鐘源/(2^9)(15.625ms基于32.768KHz)

111看門狗時(shí)鐘源/(2^6)(1.95ms基于32.768KHz)例:晶振為32768Hz,SMCLK=1MHz,需定時(shí)1s。

WDTCTL=WDTPW+WDTSSEL_3+WDTTMSEL+WDTCNTCL+WDTIS2

看門狗定時(shí)器——WDT的操作(1/4)MSP430X5XX/6XX系列單片機(jī)的看門狗定時(shí)器原理,如下圖所示:看門狗定時(shí)器——WDT的操作(2/4)

用戶可以通過WDTCTL寄存器中的WDTTMSEL(工作模式控制位)

和WDTHOLD(密鑰控制位)位設(shè)置WDT工作在看門狗模式、定時(shí)器模式和低功耗模式。

◆看門狗模式PUC后,WDT進(jìn)入默認(rèn)狀態(tài)。它自動(dòng)配置為看門狗模式,SCLK作為時(shí)鐘源,復(fù)位間隔時(shí)間為32ms。如果系統(tǒng)不用看門狗功能,應(yīng)該在程序開始處禁止看門狗功能。

例:MOV#WDTPW+WDTHOLD,&WDTCTL;

WDTCTL=WDTPW+WDTHOLD;//關(guān)閉看門狗看門狗定時(shí)器——WDT的操作(3/4)

在看門狗模式下,如果計(jì)數(shù)器超過了定時(shí)時(shí)間,就會(huì)產(chǎn)生復(fù)位和激活系統(tǒng)上電清除信號(hào)。系統(tǒng)從上電復(fù)位的地址重啟。用戶軟件一般都需要進(jìn)行如下操作: ▼進(jìn)行WDT的初始化:設(shè)置合適的時(shí)間。

通過WDTSSEL、WDTIS0、WDTIS1、

WDTIS2位來選定

▼周期性地對(duì)WDTCNT清零:防止WDT溢出。

保證WDT的正確使用:

例:

MOV#WDTPW+WDTCNTCL,&WDTCTL;

WDTCTL=WDTPW+WDTCNTCL;//關(guān)閉看門狗

看門狗定時(shí)器——WDT的操作(4/4)◆定時(shí)器模式WDTTMSEL設(shè)置為1時(shí),WDT工作在定時(shí)器模式。在定時(shí)器模式下,定時(shí)間隔到以后,不會(huì)產(chǎn)生PUC,WDTIFG標(biāo)志位置1。◆

低功耗模式當(dāng)不需要看門狗定時(shí)器時(shí),可使用WDTHOLD位來停止看門狗計(jì)數(shù)器WDTCNT,以降低功耗??撮T狗定時(shí)器的中斷控制功能◆

用到特殊功能寄存器(SFR)的兩位:WDT中斷標(biāo)志——SFRIFG1.0的WDTIFG;WDT中斷使能——SFRIE1.0的WDTIE。例:SFRIE1|=WDTIE;//使能看門狗中斷◆

在定時(shí)器模式下,定時(shí)間隔到了,WDTIFG標(biāo)志置1。當(dāng)WDTIE和GIE都置位時(shí),WDTIFG將請(qǐng)求中斷。當(dāng)中斷請(qǐng)求被響應(yīng)時(shí),WDTIFG中斷標(biāo)志可自動(dòng)清除,也可以通過軟件清除?!舳〞r(shí)器模式下中斷是可屏蔽的,由設(shè)定的間隔時(shí)間到時(shí)而引發(fā)??撮T狗模式下中斷是不可屏蔽的,由受控程序非正常運(yùn)行引發(fā),前者的優(yōu)先級(jí)低于后者??撮T狗定時(shí)器——WDT應(yīng)用舉例(1/2)例:使用看門狗定時(shí)功能產(chǎn)生一個(gè)方波(周期性的取反P1.0)程序代碼如下:#include<msp430f6638.h>voidmain(void){WDTCTL=WDT_MDLY_32;//定時(shí)周期為32ms

SFRIE1|=WDTIE;//使能WDT中斷

P1DIR|=0x01;//P1.0輸出

__enable_interrupt();//系統(tǒng)中斷允許

for(;;){

//進(jìn)入LPM0__bis_SR_register(LPM0_bits);__no_operation();}}P1.0

MSP430F6638 //看門狗中斷服務(wù)子程序#pragmavector=WDT_VECTOR__interruptvoidwatchdog_timer(void){P1OUT^=0x01;//P1.0取反}看門狗定時(shí)器——WDT應(yīng)用舉例(2/2)定時(shí)器A的主要內(nèi)容◆定時(shí)器A的特性◆定時(shí)器A的結(jié)構(gòu)◆定時(shí)器A的工作原理定時(shí)器工作模式捕獲/比較模塊輸出單元Timer_A中斷◆定時(shí)器A的典型應(yīng)用定時(shí)器A的特性◆

定時(shí)器A由一個(gè)16位定時(shí)器和多路捕獲/比較通道組成。◆

MSP430X5XX/6XX系列單片機(jī)的Timer_A有以下特性:帶有4種操作模式的異步16位定時(shí)/計(jì)數(shù)器。輸入時(shí)鐘可以有多種選擇,可以是慢時(shí)鐘,快時(shí)鐘以及外部時(shí)鐘??膳渲貌东@/比較寄存器數(shù)多達(dá)7個(gè)??膳渲玫腜WM(脈寬調(diào)制)輸出。異步輸入和同步鎖存。不僅能捕獲外部事件發(fā)生的時(shí)間還可鎖定其發(fā)生時(shí)的高低電平。完善的中斷服務(wù)功能??焖夙憫?yīng)Timer_A中斷的中斷向量寄存器。8種輸出方式選擇??蓪?shí)現(xiàn)串行通訊。定時(shí)器A的結(jié)構(gòu)(1/2)下圖為MSP430X5XX/6XX系列單片機(jī)的Timer_A結(jié)構(gòu)定時(shí)器A的結(jié)構(gòu)(2/2)◆

從上圖可以看出,Timer_A有以下部分組成:定時(shí)計(jì)數(shù)器:16位定時(shí)/計(jì)數(shù)寄存器(TAxR),它可通過軟件讀寫,Timer_A能選擇4種工作模式。時(shí)鐘源的選擇和分頻:定時(shí)器時(shí)鐘TACLK可以選擇ACLK,SMCLK或者來自外部的TAxCLK。選擇的時(shí)鐘源,可以通過軟件選擇分頻系數(shù)(2、3、4、5、6、7、8)。捕獲/比較器:用于捕獲事件發(fā)生的時(shí)間或產(chǎn)生時(shí)間間隔,捕獲比較功能的引入主要是為了提高I/O端口處理事務(wù)的能力和速度。

輸出單元:具有可選的8種輸出模式,用于產(chǎn)生用戶需要的輸出信號(hào),支持PWM。定時(shí)器A的工作原理◆定時(shí)器工作模式停止模式增計(jì)數(shù)模式連續(xù)計(jì)數(shù)模式增/減計(jì)數(shù)模式◆捕獲/比較模塊◆輸出單元◆Timer_A中斷定時(shí)器A的工作模式MSP430X5XX/6XX系列單片機(jī)的Timer_A共有4種計(jì)數(shù)模式,如下表所示:MCx模式說明00停止模式定時(shí)器停止01增計(jì)數(shù)模式定時(shí)器重復(fù)從0計(jì)數(shù)到TAxCCR010連續(xù)計(jì)數(shù)模式定時(shí)器器重復(fù)從0計(jì)數(shù)到0FFFFh11增/減計(jì)數(shù)模式定時(shí)器重復(fù)從0增計(jì)數(shù)到TAxCCR0再減計(jì)數(shù)到0定時(shí)器A工作模式——停止模式◆停止模式用于定時(shí)器暫停,并不發(fā)生復(fù)位,所有寄存器現(xiàn)行的內(nèi)容在停止模式結(jié)束后都可用。當(dāng)定時(shí)器暫停后重新計(jì)數(shù)時(shí),計(jì)數(shù)器將從暫停時(shí)的值開始以暫停前的計(jì)數(shù)方向計(jì)數(shù)。例如,停止模式前,Timer_A工作于增/減計(jì)數(shù)模式并且處于下降計(jì)數(shù)方向,停止模式后,Timer_A仍然工作于增/減計(jì)數(shù)模式。重新計(jì)數(shù)時(shí),從暫停前的狀態(tài)開始繼續(xù)沿著下降方向開始計(jì)數(shù)。捕獲/比較寄存器TAxCCR0用作Timer_A增計(jì)數(shù)模式的周期寄存器,該模式適用于定時(shí)周期小于65536的連續(xù)計(jì)數(shù)情況。計(jì)數(shù)器TAxR與TAxCCR0的值相等(或TAxR大于TAxCCR0的值)時(shí),定時(shí)器TAxR將立即重新從0開始計(jì)數(shù)。下圖說明了增計(jì)數(shù)模式的計(jì)數(shù)過程。定時(shí)器A工作模式——增計(jì)數(shù)模式

(1/3)定時(shí)器A工作模式——增計(jì)數(shù)模式

(2/3)運(yùn)行時(shí)改變捕獲/比較寄存器TAxCCR0如果新的計(jì)數(shù)周期大于或者等于舊的計(jì)數(shù)周期或者大于當(dāng)前計(jì)數(shù)值,定時(shí)器將一直計(jì)數(shù)到新的計(jì)數(shù)周期。如果新的計(jì)數(shù)周期小于當(dāng)前計(jì)數(shù)值,計(jì)數(shù)值將減至0。但是,在定時(shí)器回到0之前會(huì)有一次計(jì)數(shù)。當(dāng)定時(shí)器計(jì)數(shù)到TAxCCR0時(shí),設(shè)置標(biāo)志位TAxCCR0CCIFG(捕獲比較中斷標(biāo)志)為1,而當(dāng)定時(shí)器從TAxCCR0計(jì)數(shù)到0時(shí),設(shè)置標(biāo)志位TAIFG(定時(shí)器溢出標(biāo)志)位為1。中斷標(biāo)志位的設(shè)置過程,如下圖所示。定時(shí)器A工作模式——增計(jì)數(shù)模式(3/3)定時(shí)器A工作模式——連續(xù)計(jì)數(shù)模式(1/3)連續(xù)計(jì)數(shù)模式適用于需要65536個(gè)時(shí)鐘周期定時(shí),此模式下,定時(shí)器從當(dāng)前值計(jì)數(shù)到0FFFFH后,又從0開始重新計(jì)數(shù)。如下圖所示,此時(shí)捕獲/比較寄存器TAxCCR0和其它捕獲/比較寄存器的工作方式相同。定時(shí)器A工作模式——連續(xù)計(jì)數(shù)模式

(2/3)標(biāo)志位的設(shè)置過程,如下圖所示:當(dāng)定時(shí)器從0FFFFh計(jì)數(shù)到0時(shí),中斷標(biāo)志TAIFG置位。定時(shí)器A工作模式——連續(xù)計(jì)數(shù)模式(3/3)連續(xù)計(jì)數(shù)模式的典型應(yīng)用:產(chǎn)生多個(gè)定時(shí)信號(hào):通過中斷處理程序在相應(yīng)的比較寄存器TAxCCRx上加上一個(gè)時(shí)間差來實(shí)現(xiàn)。這個(gè)時(shí)間差是當(dāng)前時(shí)刻(即相應(yīng)的TAxCCRx中的值)到下一次中斷發(fā)生時(shí)刻所經(jīng)歷的時(shí)間,如下圖所示。定時(shí)器A工作模式——增/減計(jì)數(shù)模式(1/3)需要對(duì)稱波形時(shí)可使用增/減計(jì)數(shù)模式,該模式下,定時(shí)器先增計(jì)數(shù)到TAxCCR0的值,然后反向減計(jì)數(shù)到0。計(jì)數(shù)周期仍由TAxCCR0定義,它是TAxCCR0計(jì)數(shù)器數(shù)值的2倍。增/減計(jì)數(shù)模式時(shí)計(jì)數(shù)器中數(shù)值的變化情況如下圖所示。定時(shí)器A工作模式——增/減計(jì)數(shù)模式(2/3)運(yùn)行時(shí)改變周期寄存器TAxCCR0當(dāng)計(jì)數(shù)器正在運(yùn)行且在減計(jì)數(shù)方向時(shí)改變TAxCCR0的值,定時(shí)器將會(huì)繼續(xù)減計(jì)數(shù)方向到0。定時(shí)器減到0后,新的周期才有效。當(dāng)定時(shí)器在增計(jì)數(shù)方向時(shí)。如果新的計(jì)數(shù)周期大于或者等于原來的計(jì)數(shù)周期,或者比當(dāng)前的計(jì)數(shù)值大,定時(shí)器會(huì)增計(jì)數(shù)到新的計(jì)數(shù)周期,再反向計(jì)數(shù)。如果新的計(jì)數(shù)周期小于當(dāng)前的計(jì)數(shù)值,則定時(shí)器將立即開始減計(jì)數(shù)。但是,在定時(shí)器減計(jì)數(shù)之前有一個(gè)額外的計(jì)數(shù)。定時(shí)器A工作模式——增/減計(jì)數(shù)模式(3/3)定時(shí)器TAxR的值從TAxCCR0-1增計(jì)數(shù)到TAxCCR0時(shí),中斷標(biāo)志TAxCCR0CCIFG置位;當(dāng)定時(shí)器從0001h減計(jì)數(shù)到0000h時(shí),中斷標(biāo)志TAIFG置位。標(biāo)志位的設(shè)置情況如4-36圖所示。定時(shí)器A的捕獲/比較模塊(1/5)Timer_A有多個(gè)相同的捕獲/比較模塊,為實(shí)時(shí)處理提供靈活的手段,每個(gè)模塊都可用于捕獲事件發(fā)生的時(shí)間或產(chǎn)生定時(shí)間隔。通過TACCTLx中的CAP位選擇模式,該模塊既可用于捕獲模式,也可用于比較模式。當(dāng)發(fā)生捕獲事件或定時(shí)時(shí)間到都將引起中斷。捕獲/比較模塊的結(jié)構(gòu),如下圖所示。定時(shí)器

A的捕獲/比較模塊(2/5)捕獲/比較模塊的邏輯結(jié)構(gòu)定時(shí)器A的捕獲/比較模塊(3/5)◆捕獲模式當(dāng)TACCTLx中的CAP=1,該模塊工作在捕獲模式。每個(gè)捕獲/比較寄存器可以用來記錄時(shí)間事件,例如: ▲

測(cè)量軟件程序所用時(shí)間 ▲測(cè)量硬件事件之間的時(shí)間 ▲測(cè)量系統(tǒng)頻率用CM1和CM0位選擇捕獲條件,可以選擇禁止捕獲、上升沿捕獲、下降沿捕獲或者上升沿下降沿都捕獲。當(dāng)捕獲完成后,定時(shí)器的值被復(fù)制到TAxCCRn寄存器,并且中斷標(biāo)志CCIFG置位。如果總的中斷允許位GIE允許,相應(yīng)的中斷允許位CCIE也允許,則將產(chǎn)生中斷請(qǐng)求。如下圖所示:定時(shí)器A的捕獲/比較模塊(4/5)捕獲模式的信號(hào)定時(shí)器A的捕獲/比較模塊(5/5)◆比較模式當(dāng)TACCTLx中的CAP=0,該模塊工作在比較模式。比較方式主要用于為軟件或應(yīng)用硬件產(chǎn)生定時(shí),還可為D/A轉(zhuǎn)換功能或者馬達(dá)控制等各種用途產(chǎn)生脈寬調(diào)制(PWM)輸出信號(hào)。在計(jì)數(shù)器TAxR計(jì)數(shù)到TAxCCRn(n代表具體的捕獲比較寄存器)的值時(shí): ▲中斷標(biāo)志CCIFG置位 ▲內(nèi)部信號(hào)EQUx=1 ▲EQUx根據(jù)輸出模式影響輸出 ▲輸入信號(hào)CCI被鎖存在SCCI定時(shí)器A的輸出單元(1/2)每個(gè)捕獲/比較模塊都包含一個(gè)輸出單元,用于產(chǎn)生輸出信號(hào)。每個(gè)輸出單元有8種工作模式,可產(chǎn)生基于EQUx的多種信號(hào)。除模式0外,其他模式的輸出都在定時(shí)器時(shí)鐘上升沿時(shí)發(fā)生變化。輸出模式2,3,6,7不適合輸出單元0,因?yàn)镋QUx=EQU0。輸出單元在輸出控制位OUTMODx的控制下,有8種輸出模式輸出信號(hào)。這些模式與TAxR、TACCTLx、TAxCCR0的值有關(guān),如下表所示。定時(shí)器A的輸出單元(2/2)OUTMODx模式說明000輸出模式0:輸出輸出信號(hào)取決與寄存器TACCTLx中的OUT位。當(dāng)OUT位更新時(shí),輸出信號(hào)立即更新。001輸出模式1:置位輸出信號(hào)在TAxR等于TAxCCRn時(shí)置位,并保持置位到定時(shí)器復(fù)位或選擇另一種輸出模式為止。010輸出模式2:翻轉(zhuǎn)/復(fù)位輸出在TAxR的值等于TAxCCRn時(shí)翻轉(zhuǎn),當(dāng)TAxR的值等于TAxCCR0時(shí)復(fù)位。011輸出模式3:置位/復(fù)位輸出在TAxR的值等于TAxCCRn時(shí)置位,當(dāng)TAxR的值等于TAxCCR0時(shí)復(fù)位。100輸出模式4:翻轉(zhuǎn)輸出電平在TAxR的值等于TAxCCRn時(shí)翻轉(zhuǎn),輸出周期是定時(shí)器周期的2倍。101輸出模式5:復(fù)位輸出在TAxR的值等于TAxCCRn時(shí)復(fù)位,并保持低電平直到選擇另一種輸出模式。110輸出模式6:翻轉(zhuǎn)/置位輸出電平在TAxR的值等于TAxCCRn時(shí)翻轉(zhuǎn),當(dāng)TAxR值等于TAxCCR0時(shí)置位。111輸出模式7:復(fù)位/置位輸出電平在TAxR的值等于TAxCCRn時(shí)復(fù)位,當(dāng)TAxR的值等于TAxCCR0時(shí)置位。定時(shí)器A的中斷(1/2)◆

Timer_A中斷可由計(jì)數(shù)器溢出引起,也可以來自捕獲/比較寄存器。每個(gè)捕獲/比較模塊可獨(dú)立編程,由捕獲/比較外部信號(hào)以產(chǎn)生中斷。◆Timer_A模塊使用兩個(gè)中斷向量:一個(gè)單獨(dú)分配給捕獲/比較寄存器TAxCCR0;另一個(gè)作為共用中斷向量用于定時(shí)器和其他的捕獲/比較寄存器?!?/p>

TAxCCR0中斷如下圖所示:定時(shí)器A的中斷(2/2)◆

TAxCCR1~TAxCCRx和定時(shí)器按照優(yōu)先次序結(jié)合共用一個(gè)中斷向量,屬于多源中斷。中斷向量寄存器用于確定哪個(gè)標(biāo)志請(qǐng)求中斷。◆TAxCCR1~TAxCCRx中斷,如下圖所示:定時(shí)器A典型應(yīng)用——實(shí)現(xiàn)PWM(1/3)◆

PWM信號(hào)是一種具有固定周期不定占空比的數(shù)字信號(hào),如下圖所示:◆

如果Timer_A定時(shí)器的計(jì)數(shù)器工作在增計(jì)數(shù)方式,輸出采用輸出模式7(復(fù)位/置位模式),則可利用寄存器TAxCCR0控制PWM波形的周期,用某個(gè)寄存器TAxCCRx控制占空比。這樣Timer_A就可以產(chǎn)生出任意占空比的PWM波形。如下圖所示:定時(shí)器A典型應(yīng)用——實(shí)現(xiàn)PWM(2/3)◆可以隨時(shí)間變化任意改變PWM信號(hào)的占空比,具體做法:保持CCR0值(周期不變);改變CCRx值(改變占空比)。如下圖所示:定時(shí)器A典型應(yīng)用——實(shí)現(xiàn)PWM(3/3)◆如果PWM信號(hào)占空比隨時(shí)間變化,那么經(jīng)過濾波之后的輸出信號(hào)就是幅度變化的模擬信號(hào),因此通過控制PWM信號(hào)的占空比,就可以產(chǎn)生不同的模擬信號(hào),實(shí)現(xiàn)D/A轉(zhuǎn)換。如下圖所示:◆

PWM不需要修改占空比和時(shí)間時(shí),CPU在做完Timer_A初始化工作之后,Timer_A就能自動(dòng)輸出PWM,而不需利用中斷維持PWM輸出,此時(shí)CPU就可以進(jìn)入低功耗狀態(tài)。

定時(shí)器B的結(jié)構(gòu)◆

定時(shí)器B(Timer_B)是一個(gè)帶有多路捕獲/比較寄存器的16位定時(shí)/計(jì)數(shù)器。◆除了在捕獲/比較模塊中Timer_B比Timer_A增加了比較鎖存器,Timer_B和Timer_A的結(jié)構(gòu)幾乎相同。多個(gè)比較鎖存器還可以成組工作,以達(dá)到同

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論