通用定時器計數(shù)模式
發(fā)布時間:2009/1/5 0:00:00 訪問次數(shù):3109
每個通用定時器都支持停止/保持、連續(xù)遞增計數(shù)、雙向增/減計數(shù)和連續(xù)增/減計數(shù)4種操作模式,可以通過控制寄存器txcon中的tmudei~tmode0位進行設置。同時,可以通過定時器使能位tenable使能或禁止定時器的計數(shù)操作。當定時器被禁止時,定時器的計數(shù)器操作也被禁止,并且定時器的預定標器被復位為x/1;當使能定時器時,定時器按照寄存器txcon中的tmode]~tmt)det;位確定的計數(shù)模式工作并開始計數(shù)。
1.停止/保持模式
在這種模式下,通用定時器停止計數(shù)并保持在當前的狀態(tài),定時器的計數(shù)器、比較輸出和預定標計數(shù)器都保持不變。
2.連續(xù)遞增計數(shù)模式
在連續(xù)遞增模式下,通用定時器將按照預定標的輸入時鐘計數(shù),在定時器的計數(shù)器值和周期寄存器值匹配后的下一個輸人時鐘的上升沿復位為0,并啟動下一個計數(shù)周期。
在通用定時器的值變?yōu)?一個時鐘周期后,定時器的下溢中斷標志位置位。如果該位未被屏蔽,則產(chǎn)生一個外設中斷請求。如果該周期中斷已由gptcoa/b寄存器中的相應位選定用來啟動ado,則在中斷標志置位的同時將a/d轉(zhuǎn)換啟動信號送到a/d轉(zhuǎn)換模塊。
在txcnt的值與ox ffff匹配1個時鐘周期后,上溢中斷標志位置位。如果該位未被屏蔽,則會產(chǎn)生1個外設中斷請求。
除第一個計時周期外.定時器周期的時間為(txpr+1)個定標后的時鐘輸入周期。如果定時器的計數(shù)器開始計數(shù)時為0,則第一個周期也和以后的周期相同。
通用定時器的初始值可以是oh~oxffff中的任意值。如果計數(shù)器的初始值大于周期寄存器的值,定時器計數(shù)器將計數(shù)到ox ffff,清零后繼續(xù)計數(shù)操作,同初始值為0一樣。當計數(shù)器的初始值等于周期寄存器的值時,定時產(chǎn)生周期中斷標志,計數(shù)器清零,置位下溢中斷標志而后繼續(xù)向上計數(shù)。如果定時器的初始值在0和周期寄存器的值之間,定時器就計數(shù)到周期寄存器的值完成該計數(shù)周期,其他情況同初始計數(shù)器值與周期寄存器的值相同一樣。
在連續(xù)遞增模式下,gptcona/b寄存器中的計數(shù)方向標識位為1,內(nèi)部cpu時鐘或外部時鐘均可作為定時器的輸人時鐘。此時,tdira/b引腳輸入的時鐘不起作用。
通用定時器的連續(xù)遞增計數(shù)模式特別適用于邊沿觸發(fā)或異步pwm波形產(chǎn)生等應用,也適用于電機和運動控制系統(tǒng)采樣周期的產(chǎn)生。圖1給出了連續(xù)遞增計數(shù)模式的工作方式。
如圖1所示,通用定時器連續(xù)遞增計數(shù)模式(txpr=3或2),從計數(shù)器計數(shù)到周期寄存器直到定時器重新開始新的計數(shù)周期沒有一個時鐘周期丟失。
3.定向遞增/遞減計數(shù)模式
通用定時器工作在定向遞增/遞減計數(shù)模式時,定時器根據(jù)定標后的時鐘或計數(shù)方向(tdi-ra/b)引腳的輸入進行遞增或遞減計數(shù)。當tdira/b引腳保持為高電平時,通用定時器遞增計數(shù)直到計數(shù)值等于周期寄存器的值(如果初始值大于周期寄存器的值就計數(shù)到oxffffh)。當通用定時器的計數(shù)寄存器的值等于周期寄存器的值(或等于ffffh)時,定時器的計數(shù)器清零,然后重新遞增計數(shù)到周期寄存器的值。當tdira b引腳保持為低電平時,通用定時器計數(shù)器采用遞減計數(shù)方式,直到等于0,然后定時器重新載入周期寄存器中的值并繼續(xù)遞減計數(shù)。
周期、下溢、上溢中斷標志位,中斷申請以及相關(guān)約操作都曲各自事仵產(chǎn)生,其產(chǎn)生方式與連續(xù)遞增計數(shù)模式相同。計數(shù)方向引腳(tdira b)的電平變化后9只有當前計數(shù)周期完成后定時器的計數(shù)方向才變化。
圖1 通用定時器的連續(xù)增計數(shù)模式的工作方式
定時器在這種工作模式下,計數(shù)方向由gptcona/b寄存器中的方向控制位確定:1代表遞增計數(shù),0代表遞減計數(shù)。tclkina/b引腳的外部時鐘和內(nèi)部cpu時鐘均可做為定時器的輸入時鐘。圖2給出了通用定時器定向增/減計數(shù)模式的工作方式。
圖2 通用定時器定向增/減計數(shù)模式
在事件管理器模塊中,通用定時器2/4的定向增/減計數(shù)模式和qep電路結(jié)合使用,qep電路為通用定時器2/4提供計數(shù)時鐘和計數(shù)方向。這種工作方式在運動/電機控制和功率電子應用領域可以用來確定外部事件發(fā)生的時間。
4.連續(xù)增/減計數(shù)模式
連續(xù)增/減計數(shù)模式與定向增/減計數(shù)模式基本相同,只是在連續(xù)增/減計數(shù)模式下,引腳tdira/b不再影響計數(shù)方向。當計數(shù)器的值達到周期寄存器的值(或ffffh,定時器的初始值大于周期寄存器的值),定時器的計數(shù)方向從遞增計數(shù)變?yōu)檫f減計數(shù);當定時器清零時,定時器的方向從遞減計數(shù)變?yōu)檫f增計數(shù)。
在這種模式下,除了第一個計數(shù)周期外,定時器計數(shù)周期都是2×(txpr)個定
每個通用定時器都支持停止/保持、連續(xù)遞增計數(shù)、雙向增/減計數(shù)和連續(xù)增/減計數(shù)4種操作模式,可以通過控制寄存器txcon中的tmudei~tmode0位進行設置。同時,可以通過定時器使能位tenable使能或禁止定時器的計數(shù)操作。當定時器被禁止時,定時器的計數(shù)器操作也被禁止,并且定時器的預定標器被復位為x/1;當使能定時器時,定時器按照寄存器txcon中的tmode]~tmt)det;位確定的計數(shù)模式工作并開始計數(shù)。
1.停止/保持模式
在這種模式下,通用定時器停止計數(shù)并保持在當前的狀態(tài),定時器的計數(shù)器、比較輸出和預定標計數(shù)器都保持不變。
2.連續(xù)遞增計數(shù)模式
在連續(xù)遞增模式下,通用定時器將按照預定標的輸入時鐘計數(shù),在定時器的計數(shù)器值和周期寄存器值匹配后的下一個輸人時鐘的上升沿復位為0,并啟動下一個計數(shù)周期。
在通用定時器的值變?yōu)?一個時鐘周期后,定時器的下溢中斷標志位置位。如果該位未被屏蔽,則產(chǎn)生一個外設中斷請求。如果該周期中斷已由gptcoa/b寄存器中的相應位選定用來啟動ado,則在中斷標志置位的同時將a/d轉(zhuǎn)換啟動信號送到a/d轉(zhuǎn)換模塊。
在txcnt的值與ox ffff匹配1個時鐘周期后,上溢中斷標志位置位。如果該位未被屏蔽,則會產(chǎn)生1個外設中斷請求。
除第一個計時周期外.定時器周期的時間為(txpr+1)個定標后的時鐘輸入周期。如果定時器的計數(shù)器開始計數(shù)時為0,則第一個周期也和以后的周期相同。
通用定時器的初始值可以是oh~oxffff中的任意值。如果計數(shù)器的初始值大于周期寄存器的值,定時器計數(shù)器將計數(shù)到ox ffff,清零后繼續(xù)計數(shù)操作,同初始值為0一樣。當計數(shù)器的初始值等于周期寄存器的值時,定時產(chǎn)生周期中斷標志,計數(shù)器清零,置位下溢中斷標志而后繼續(xù)向上計數(shù)。如果定時器的初始值在0和周期寄存器的值之間,定時器就計數(shù)到周期寄存器的值完成該計數(shù)周期,其他情況同初始計數(shù)器值與周期寄存器的值相同一樣。
在連續(xù)遞增模式下,gptcona/b寄存器中的計數(shù)方向標識位為1,內(nèi)部cpu時鐘或外部時鐘均可作為定時器的輸人時鐘。此時,tdira/b引腳輸入的時鐘不起作用。
通用定時器的連續(xù)遞增計數(shù)模式特別適用于邊沿觸發(fā)或異步pwm波形產(chǎn)生等應用,也適用于電機和運動控制系統(tǒng)采樣周期的產(chǎn)生。圖1給出了連續(xù)遞增計數(shù)模式的工作方式。
如圖1所示,通用定時器連續(xù)遞增計數(shù)模式(txpr=3或2),從計數(shù)器計數(shù)到周期寄存器直到定時器重新開始新的計數(shù)周期沒有一個時鐘周期丟失。
3.定向遞增/遞減計數(shù)模式
通用定時器工作在定向遞增/遞減計數(shù)模式時,定時器根據(jù)定標后的時鐘或計數(shù)方向(tdi-ra/b)引腳的輸入進行遞增或遞減計數(shù)。當tdira/b引腳保持為高電平時,通用定時器遞增計數(shù)直到計數(shù)值等于周期寄存器的值(如果初始值大于周期寄存器的值就計數(shù)到oxffffh)。當通用定時器的計數(shù)寄存器的值等于周期寄存器的值(或等于ffffh)時,定時器的計數(shù)器清零,然后重新遞增計數(shù)到周期寄存器的值。當tdira b引腳保持為低電平時,通用定時器計數(shù)器采用遞減計數(shù)方式,直到等于0,然后定時器重新載入周期寄存器中的值并繼續(xù)遞減計數(shù)。
周期、下溢、上溢中斷標志位,中斷申請以及相關(guān)約操作都曲各自事仵產(chǎn)生,其產(chǎn)生方式與連續(xù)遞增計數(shù)模式相同。計數(shù)方向引腳(tdira b)的電平變化后9只有當前計數(shù)周期完成后定時器的計數(shù)方向才變化。
圖1 通用定時器的連續(xù)增計數(shù)模式的工作方式
定時器在這種工作模式下,計數(shù)方向由gptcona/b寄存器中的方向控制位確定:1代表遞增計數(shù),0代表遞減計數(shù)。tclkina/b引腳的外部時鐘和內(nèi)部cpu時鐘均可做為定時器的輸入時鐘。圖2給出了通用定時器定向增/減計數(shù)模式的工作方式。
圖2 通用定時器定向增/減計數(shù)模式
在事件管理器模塊中,通用定時器2/4的定向增/減計數(shù)模式和qep電路結(jié)合使用,qep電路為通用定時器2/4提供計數(shù)時鐘和計數(shù)方向。這種工作方式在運動/電機控制和功率電子應用領域可以用來確定外部事件發(fā)生的時間。
4.連續(xù)增/減計數(shù)模式
連續(xù)增/減計數(shù)模式與定向增/減計數(shù)模式基本相同,只是在連續(xù)增/減計數(shù)模式下,引腳tdira/b不再影響計數(shù)方向。當計數(shù)器的值達到周期寄存器的值(或ffffh,定時器的初始值大于周期寄存器的值),定時器的計數(shù)方向從遞增計數(shù)變?yōu)檫f減計數(shù);當定時器清零時,定時器的方向從遞減計數(shù)變?yōu)檫f增計數(shù)。
在這種模式下,除了第一個計數(shù)周期外,定時器計數(shù)周期都是2×(txpr)個定