當(dāng)前位置:首頁 > 技術(shù)學(xué)院 > 熱搜器件
[導(dǎo)讀]定時器/計數(shù)器0 和定時器/計數(shù)器1 都可以在方式0、方式1、方式2 工作,而方式3 只有前者才能工作。1. 方式 0當(dāng)TMOD 中M1、M0 都為0 時,T/C 工作在方式0。方式0 為13 位的T/C,由TH 提供高8 位,TL 提供低5 位,注意

定時器/計數(shù)器0 和定時器/計數(shù)器1 都可以在方式0、方式1、方式2 工作,而方式3 只有前者才能工作。

1. 方式 0

當(dāng)TMOD 中M1、M0 都為0 時,T/C 工作在方式0。

方式0 為13 位的T/C,由TH 提供高8 位,TL 提供低5 位,注意TL 的高3 位是無效的,計數(shù)溢出值為2 的13 次方=8192,啟動該計數(shù)器需要設(shè)置好計數(shù)初值。

當(dāng)C/-- T該位為0 時,T/C 為定時器,振蕩源12 分頻的信號作為計數(shù)脈沖;當(dāng)C/-- T該位為1 時,T/C為計數(shù)器,對外部脈沖輸入端的T0 或T1 引腳進(jìn)行脈沖計數(shù)。

計數(shù)脈沖能否加到計數(shù)器上,受啟動信號的控制。當(dāng)GATE=0 時,只要TR=1,則T/C 啟動;當(dāng)GATE=1時,啟動信號受到TR 與INT 的雙重控制。T/C 啟動后立即加1 計數(shù),當(dāng)13 位計數(shù)滿時,TH 向高位進(jìn)位。此進(jìn)位將中斷溢出標(biāo)志TF 置位即TF=1,產(chǎn)生中斷請求,表示定時時間或計數(shù)次數(shù)到達(dá)。若T/C 開中斷(ET=1)且CPU 開中斷(EA=1),則當(dāng)CPU 自動轉(zhuǎn)向中斷服務(wù)函數(shù)時,TF 自動清零,不需要人工軟件清零。

2. 方式 1

當(dāng)TMOD 中M1、M0 為0、1 時,T/C 工作在方式1。方式1 與方式0 基本相同,唯一不同的是方式0 是13 位計數(shù)方式,方式1 是16 位計數(shù)方式,TH 和TL 都同時提供8 位(方式0 時TL 只提供低5 位,高3 位無效),計數(shù)溢出值為2 的16 次方=65536。

3. 方式 2

當(dāng)TMOD 中M1、M0 為1、0 時,T/C 工作在方式2。方式2 是8 位的可自動重裝載的T/C,滿計數(shù)值為2 的8 次方=256。在方式0 和方式1 中,當(dāng)計數(shù)滿后,若要進(jìn)行下一次定時/計數(shù),必須通過軟件向TH 和TL 重新裝載預(yù)置計數(shù)值。方式2 中TH 和TL 被當(dāng)作兩個8 位計數(shù)器。技術(shù)過程中,TH 寄存8 位初值并保持不變,由TL 進(jìn)行8 位計數(shù)。計數(shù)溢出時,除產(chǎn)生溢出中斷請求外,還自動將TH 中初值重裝到TL,即重裝載。除此之外,方式2 也同方式0。

4. 方式 3

方式3 只適合于T/C0。當(dāng)T/C0 工作在方式3 時,TH0 和TL0 成為兩個獨立的計數(shù)器。這時,TL0可作定時器/計數(shù)器,占用T/C0 在TCON 和TMOD 寄存器中的控制位和標(biāo)志位;而TH0 只能作定時器使用,占用T/C1 的資源TR1 和TF1。在這種情況下,T/C1 仍可用于方式0/1/2,當(dāng)不能夠使用中斷方式。只有將T/C1 用作串行口的波特率方式器時,T/C0 才工作在方式3,以便增加一個定時器。

5. T/C2的工作方式

定時器/計數(shù)器2 包含一個16 位重載方式,T/C2 在計數(shù)溢出后,自動在瞬間重裝載(像8 位自動重載方式2)。自動重載可由外部引腳T2EX 的負(fù)跳變開始,這樣外部引腳用于產(chǎn)生和其他硬件計數(shù)器的同步信號。T/C2 可以看作看門狗或定時溢出的定時器。T/C2 還有捕獲方式。把瞬時計數(shù)值傳到另外的CPU 可讀取的寄存器對(RCAP2H、RCAP2L)。

這樣,在讀的過程中,兩個字節(jié)的計數(shù)值無波動的危險。對于快速變化的計數(shù),比如計數(shù)值在讀取高字節(jié)時是16FF時,到讀取低字節(jié)時已變到1700,結(jié)果卻得到1600。若16FF 瞬間捕獲到另外的寄存器,則可以在CPU空閑的時候取到16 和FF。

#include "stc.h" //加載stc.h 頭文件

unsigned char i=0; //聲明變量i

void main(void) //主函數(shù),程序是在這里運行的

{

TH0=(65536-50000)/256; //計數(shù)寄存器高8 位

TL0=(65536-50000)%6; //計數(shù)寄存器低8 位

TMOD=0x01; //工作方式為16 位定時器

ET0=0x01; //允許T/C0 中斷

EA=1; // 全部中斷允許

TR0=1; // 啟動T/C0 運行

while(1) // 進(jìn)入死循環(huán)

{

if(i>7)i=0; //若i>7,則i=0

}

}

void Timer0IRQ(void) interrupt 1 //中斷服務(wù)函數(shù)

{

TH0=(65536-50000)/256; //計數(shù)寄存器高8 位重新載入

TL0=(65536-50000)%6; //計數(shù)寄存器低8 位重新載入

84

P2=1<

i++; //i 自加1

}

分析:

T/C0 的初始化在main 函數(shù)中進(jìn)行,在while(1)死循環(huán)當(dāng)中,只有對i 變量檢測,對LED 燈進(jìn)行操作主要放置在T/C0 的中斷服務(wù)函數(shù)Timer0IRQ,即P2=1<很奇怪,main()函數(shù)里面基本對單片機(jī)的操作什么都沒有,只有對變量i 的檢測操作,幾乎是空載運作,但是為什么流水燈還是能夠運行呢?那么答案只能有一個,Timer0IRQ()中斷服務(wù)函數(shù)能夠脫離主函數(shù)獨立運行。

大家很自然地想到為什么Timer0IRQ()函數(shù)獨立于main()函數(shù)還能夠運行,聯(lián)系到在PC 機(jī)的C 語言的編程是根本不可能的事,因為所有的運行都必選在main()函數(shù)體中運行。只能告訴大家不同的平臺自然有所不同,它們之間的不同必然會有各自的優(yōu)點,還有例如AVR、ARM單片機(jī)編程同樣是“主程序+中斷服務(wù)函數(shù)”組合的架構(gòu),更何況是8051 系列單片機(jī)編程。當(dāng)然我們學(xué)會了8051 系列單片機(jī)的編程,自然而然在AVR、ARM 或者更加多的單片機(jī)中的編程中得心應(yīng)手,感覺就是以不變應(yīng)萬變。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉