www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]單片機(jī)定時器其實跟我們平時常說的計數(shù)器,是同一個電子元件,只不過計數(shù)器記錄的是單片機(jī)外部情況,所接收的也是外部脈沖,而定時器則是由單片機(jī)自身提供的一個非常穩(wěn)定的計數(shù)器,這個穩(wěn)定的計數(shù)器就是單片機(jī)上連接的晶振部件。

一、什么是單片機(jī)定時器

單片機(jī)定時器其實跟我們平時常說的計數(shù)器,是同一個電子元件,只不過計數(shù)器記錄的是單片機(jī)外部情況,所接收的也是外部脈沖,而定時器則是由單片機(jī)自身提供的一個非常穩(wěn)定的計數(shù)器,這個穩(wěn)定的計數(shù)器就是單片機(jī)上連接的晶振部件。

二、單片機(jī)定時器的類型

在單片機(jī)中,分為軟件定時器,不可編程硬件定時器,可編程定時器。

1、軟件定時:CPU每執(zhí)行一條指令時,是需要固定時間的,所以,通過執(zhí)行空指令可以達(dá)到延時的效果,這樣子做的代價是占用CPU時間,所以一般很少這么做。

2、不可編程硬件定時器:是由電路和硬件來完成定時功能的,一般采用基本電路,外接定時部件(電阻和電容),通過改變電阻的阻值和電容的電容值來修改定時值,一旦確定后件不能通過軟件修改,這樣子做的優(yōu)點是不需要占用CPU時間。

3、可編程定時器:通過軟件來確定定時值及其范圍,可編程定時器功能強(qiáng)大,靈活性高。這是本文詳細(xì)講解的定時器。

MCS 51 單片機(jī)內(nèi)部帶有兩個 16 位定時器/計數(shù)器(8052 則有 3 個), 以及一個全雙工的異步通信串行接口,這給用戶帶來了極大的方便。本文介紹 8051 系列單片機(jī)內(nèi)部定時器/計數(shù)器和串行口的結(jié)構(gòu)及工作原理。

定時器/計數(shù)器的結(jié)構(gòu)及工作原理

定時器/計數(shù)器實質(zhì)上是加法計數(shù)器,當(dāng)它對具有固定時間間隔的內(nèi)部機(jī)器周期進(jìn)行計數(shù)時,它是定時器;當(dāng)它對外部事件進(jìn)行計數(shù)時,它是計數(shù)器。

定時器/計數(shù)器的基本結(jié)構(gòu)如圖 6.1 所示。

圖 6.1 定時器/計數(shù)器結(jié)構(gòu)框圖

圖中,基本部件是兩個 8 位的計數(shù)器,其中 TH1 、TL1 是 T1 的計數(shù)器,TH0 、TL0 是 T0 的計數(shù)器。TH1 和 TL1 、TH0 和 TL0 構(gòu)成兩個 16 位加法計數(shù)器,它的工作狀態(tài)及工作方式由定時器/計數(shù)器的工作方式寄存器 TMOD 及定時器/計數(shù)器控制寄存器 TCON 的各位決定。工作狀態(tài)有定時和計數(shù)兩種 , 由 TMOD 中的一位控制 。工作方式有方式 0~3 共四種 ,由 TMOD 中的兩位編碼決定 。TMOD 和 TCON 的內(nèi)容 由軟件寫入。定時器/計數(shù)器的輸出是加法計數(shù)器的計滿 出信號,它使 TCON 的某位(TF0 或 TF1) 置 1,作為定時器/計數(shù)器的溢出中斷標(biāo)志。

當(dāng)加法計數(shù)器的初值被設(shè)置,用指令改變 TMOD 和 TCON 的 內(nèi)容后,就會在下一條 指令的第一個機(jī)器周期的 S1P1 時按設(shè)定的方式自動進(jìn)行工作。

工作方式在后面討論,這里先討論定時和計數(shù)工作狀態(tài)。在作定時器使用時,輸入的時鐘脈沖是由晶體振蕩器的輸出經(jīng) 12 分頻后得到的,所 以定時器可看做是對計算機(jī)機(jī)器周期的計數(shù)器(因為每個機(jī)器周期包含 12 個振蕩周期,故每個機(jī)器周期定時器加 1 ,可以把輸入的時鐘脈沖看成機(jī)器周期信號), 故其頻率為晶振頻率的 1/12 。如晶振頻率為 12 MHz,則定時器每接收一個輸入脈沖的時間為 1 μs 。

當(dāng)它用作對外部事件計數(shù)時,接相應(yīng)的外部輸入端 T0(P3.4) 或 T1(P3.5)。 在這種情況下 ,當(dāng)檢測到輸入端的電平由高跳變到低時,計數(shù)器就加 1(它在每個機(jī)器周期 的 S5P2 時采樣外部輸入 ,當(dāng)采樣值在這個機(jī)器周期為高,在下一個機(jī)器周期為低時,則計數(shù)器加 1)。 加 1 操作發(fā)生在檢測到這種跳變后的一個機(jī)器周期中的 S3P1 ,因此需要兩個機(jī)器周期來識別一個從“1”到“0”的跳變,故最高計數(shù)頻率為晶振頻率的 1/24 。這就要求輸入信號的電平要在跳變后至少應(yīng)在一個機(jī)器周期內(nèi)保持不變,以保證在給定的電平再次變化前至少被采樣一次。

這里要注意的是:加法計數(shù)器是計滿溢出時才申請中斷,所以在給計數(shù)器賦初值時,不能直接輸入所需的計數(shù)值,而應(yīng)輸入的是計數(shù)器計數(shù)的最大值與這一計數(shù)值的差值,設(shè) 最大值為 M,計數(shù)值為 N,初值為 X,則 X 的計算方法如下:

計數(shù)狀態(tài):X=M-N

定時狀態(tài):X=M-定時時間/T

其中 T=12÷晶振頻率

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