8XC552 系列單片機(jī)的定時(shí)器 T2 和捕捉比較邏輯是什么
掃描二維碼
隨時(shí)隨地手機(jī)看文章
定時(shí)器T2和連接到這個(gè)寄存器上的4個(gè)16位捕捉寄存器及1個(gè)比較器組成定時(shí)器T2與捕捉比較邏輯。當(dāng)在相應(yīng)引腳上電平發(fā)生變化時(shí),捕捉寄存器將捕捉定時(shí)器T2的內(nèi)容,比較邏輯是以固定的時(shí)間去設(shè)置、復(fù)位和觸發(fā)P4口的輸出。
定時(shí)器T2和捕捉比較邏輯如圖10.22所示。
圖10.22定時(shí)器T2和捕捉比較邏輯
1.定時(shí)器T2
8XC552單片機(jī)的定時(shí)器T2是一個(gè)16位的計(jì)數(shù)器,它由特殊功能寄存器TMH2(高字節(jié))和TML2(低字節(jié))所組成。它的輸入可由軟件編程為:fOSC/12、T2引腳輸入的外部脈沖或停止計(jì)數(shù)。當(dāng)T2用作計(jì)數(shù)器時(shí),T2引腳上的外部輸入信號(hào)經(jīng)過(guò)預(yù)分頻器進(jìn)入T2,預(yù)分頻器的分頻系數(shù)可編程為1、2、4、8四種,T2引腳上的輸入脈沖頻率可達(dá)每個(gè)機(jī)器周期的一次方波。特殊功能寄存器TMH2和TML2是只讀寄存器,由復(fù)位信號(hào)或RT2引腳上的上跳變清“0”(若允許),預(yù)分頻器也同時(shí)清“0”,RT2是由置位T2ER(TM2CON.5)位使能的。當(dāng)T2發(fā)生低字節(jié)溢出或16位溢出時(shí)產(chǎn)生中斷請(qǐng)求,這兩個(gè)中斷的向量是相同的,兩者能同時(shí)編程為中斷允許或禁止。
定時(shí)器T2由特殊功能寄存器TM2CON控制,TM2CON的地址為EAH,其格式如圖10.23所示。
TM2CON各位的功能如下:
T2IS1:16位溢出中斷選擇位。
T2IS0:字節(jié)溢出中斷選擇位。
T2ER:外部復(fù)位允許。T2ER=1時(shí),T2可被RT2(P1.5)引腳上的上升沿復(fù)位。T2B0:T2字節(jié)溢出中斷標(biāo)志位。
T2P1、T2P0:預(yù)分頻器系數(shù)選擇。
4種系數(shù)選擇方式如下:
T2MS1、T2MS0:工作方式選擇。
選擇方式如下:
在使用12 MHz晶振時(shí),定時(shí)器T2的16位溢出每隔65.5 ms、131 ms、262 ms或
524ms發(fā)生一次(具體間隔時(shí)間由分頻系數(shù)決定),即最大的定時(shí)時(shí)間間隔為0.5s。如果要求定時(shí)時(shí)間大于0.5s,就需要擴(kuò)展定時(shí)器T2。
2.捕捉邏輯
定時(shí)器T2連接4個(gè)16位捕捉寄存器:CT0~CT3,這些輸入信號(hào)與P1口復(fù)用,當(dāng)引腳CT0I~CT3I上電平發(fā)生變化時(shí),定時(shí)器T2的值裝入這些捕捉寄存器并產(chǎn)生中斷請(qǐng)求,中斷標(biāo)志存放在特殊功能寄存器TM2IR中。如果不需要捕捉功能,這些中斷可作為外部中斷輸入。利用捕捉控制寄存器CTCON,可以捕捉輸入信號(hào)的上跳變、下跳變或上下跳變。在每個(gè)機(jī)器周期的S1P1,采樣輸入信號(hào),當(dāng)檢測(cè)到一個(gè)所選擇的跳變時(shí),在該機(jī)器周期的末尾將定時(shí)器T2的內(nèi)容捕捉到寄存器中。
捕捉控制寄存器CTCON的地址為EBH,格式如圖10.24所示。
CTCON各位的功能如下:
CTN3~CTN0:CT3~CT0分別由CT3I~CT0I的下降沿捕捉;
CTP3~CTP0:CT3~CT0分別由CT3I~CT0I的上升沿捕捉。
利用CT3~CT0捕捉T2的功能,可方便地測(cè)量時(shí)間間隔,若一個(gè)周期變化的事件以上升或下降沿的形式加在一個(gè)捕捉引腳上,則兩個(gè)事件之間的間隔可用捕捉寄存器捕捉T2中的時(shí)間值來(lái)測(cè)量,并在中斷服務(wù)程序中計(jì)算出這兩個(gè)事件之間的時(shí)間間隔。如采用12 MHz的晶振,定時(shí)器T2最多可編程為524 ms溢出一次,當(dāng)事件的時(shí)間間隔大于524ms時(shí),則應(yīng)采用T2擴(kuò)展程序?qū)2的溢出計(jì)數(shù)。
3.比較邏輯
每當(dāng)定時(shí)器T2加1時(shí),3個(gè)16位比較寄存器CM0~CM2的內(nèi)容與T2新的計(jì)數(shù)值進(jìn)行比較,發(fā)現(xiàn)相等時(shí),在同一個(gè)機(jī)器周期的末尾置位定時(shí)器T2中斷標(biāo)志寄存器TM2IR中相應(yīng)的中斷標(biāo)志。當(dāng)T2與CM0相等時(shí),置位P4口低6位中的某些位(由置位允許寄存器STE的低6位確定);當(dāng)T2與CM1相等時(shí),復(fù)位P4口低6位中的某些位(由復(fù)位/觸發(fā)允許寄存器RTE的低6位確定);當(dāng)T2與CM2相等時(shí),觸發(fā)翻轉(zhuǎn)P4口高兩位中的某一位觸發(fā)器(由復(fù)位/觸發(fā)允許寄存器RTE的高兩位確定)。兩個(gè)附加的觸發(fā)器TG47和TG48存儲(chǔ)上次的結(jié)果,而被觸發(fā)的是P4口高兩位中的某一位觸發(fā)器。這樣,如果當(dāng)前的操作是復(fù)位,即使在下次操作之前,此口被軟件復(fù)位也是這樣。P4口的每一位在任意時(shí)候還可以由軟件來(lái)置位或復(fù)位,但是比較結(jié)果相等時(shí)所引起的硬件修改優(yōu)于軟件修改。當(dāng)比較結(jié)果同時(shí)需要置位或復(fù)位時(shí),端口寄存器將被復(fù)位。
置位允許寄存器STE的地址為0EEH,格式如圖10.25所示。
STE各位的功能如下:
SP40~SP45:當(dāng)某位為1時(shí),T2與CM0匹配,則對(duì)應(yīng)設(shè)置P4.0~P4.5,當(dāng)某位為0時(shí),無(wú)影響。
TG46:觸發(fā)器輸出(只讀)。
TG47:觸發(fā)器輸出(只讀)。
復(fù)位/觸發(fā)寄存器RTE的地址為0EFH,格式如圖10.26所示。
RTE各位的功能如下:
RP40~RP45:當(dāng)某位為1時(shí),T2與CM1匹配復(fù)位輸出P4.0~P4.5,當(dāng)某位為1時(shí),對(duì)輸出無(wú)影響。
TP46、TP47:當(dāng)某位為1時(shí),T2與CM2匹配時(shí)觸發(fā)輸出P4.6、P4.7,否則無(wú)影響。定時(shí)器T2中斷標(biāo)志寄存器TM2IR的地址為0C8H,格式如圖10.27所示。
TM2IR各位的功能如下:
CTI0~CTI3:CT0~CT3捕捉到T2內(nèi)容時(shí)中斷標(biāo)志。
CMI0~CMI2:CM0~CM2與T2比較匹配時(shí)中斷標(biāo)志。
T2OV:定時(shí)器T2的16位溢出標(biāo)志。
定時(shí)器T2中斷允許寄存器IEN1的地址為0E8H,格式如圖10.28所示。
IEN1各位的功能如下:
ET2:T2字節(jié)溢出或16位溢出中斷允許位;
ECM0~ECM2:比較寄存器CM0~CM2中斷允許位;
ECT0~ECT3:捕捉寄存器CT0~CT3中斷允許位。
其中各位為“1”時(shí)允許中斷,為“0”時(shí)禁止中斷。
定時(shí)器T2中斷優(yōu)先級(jí)寄存器IP1的地址為0F8H,其格式如圖10.29所示。
IP1各位的功能如下:
PT2:定時(shí)器T2溢出中斷優(yōu)先級(jí);
PCM0~PCM2:比較器CM0~CM2中斷優(yōu)先級(jí);
PCT0~PCT3:捕捉寄存器CT0~CT3中斷優(yōu)先級(jí)。
其中各位為“1”時(shí)定義為高優(yōu)先級(jí),為“0”時(shí)定義為低優(yōu)先級(jí)。