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

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]實(shí)質(zhì)上是加一的計(jì)數(shù)器。外部脈沖讓他不斷加一,當(dāng)計(jì)數(shù)器溢出時(shí),計(jì)數(shù)器的溢出相應(yīng)的中斷標(biāo)志位置1,并向CPU發(fā)出中斷請(qǐng)求。如果定時(shí)器/計(jì)數(shù)器工作為定時(shí)模式,則表示時(shí)間以到;如果工作于計(jì)數(shù)模式,則表示計(jì)數(shù)器、則表示計(jì)數(shù)值已滿。

定時(shí)器在單片機(jī)內(nèi)部就像一個(gè)小鬧鐘一樣,根據(jù)時(shí)鐘的輸出信號(hào),每隔“一秒”,計(jì)數(shù)單元的數(shù)值就增加一,當(dāng)計(jì)數(shù)單元數(shù)值增加到“設(shè)定的鬧鐘提醒時(shí)間”時(shí),計(jì)數(shù)單元就會(huì)向中斷系統(tǒng)發(fā)出中斷申請(qǐng),產(chǎn)生“響鈴提醒”,使程序跳轉(zhuǎn)到中斷服務(wù)函數(shù)中執(zhí)行。

了解定時(shí)器就一定要先了解中斷,中斷,即在 cpu 的一步步按照指令運(yùn)行(A)的過(guò)程中,可能會(huì)有其它的更緊急的事情(B)需要做的事情, 需要 cpu 暫時(shí)停止當(dāng)前的程序,做完了事情B之后,又可以繼續(xù)去運(yùn)行先前的程序(A)。

舉一個(gè)很簡(jiǎn)單的例子,比如我們今天9點(diǎn)要去參加一個(gè)會(huì)議,我們定了一個(gè)鬧鐘,九點(diǎn)前的這段時(shí)間我們會(huì)做我們?cè)撟龅南胱龅娜魏问虑?,但到?點(diǎn),鬧鐘響起我們就要先去參加會(huì)議,等到開(kāi)完會(huì)以后在做我們想做的事情,以此循環(huán)類推。

另一個(gè)概念叫溢出,我們知道秒表計(jì)時(shí)到59秒的時(shí)候,再過(guò)1秒就變成了00。同理,當(dāng)我們的unsigned char類型的變量的數(shù)值為255時(shí),再加1就變?yōu)?了, unsigned int的變量如果此時(shí)的值為65535,后面再加1也同樣成為0,這些都叫溢出。

在控制系統(tǒng)中,常常要求有一些實(shí)時(shí)時(shí)鐘以實(shí)現(xiàn)定時(shí)或者延時(shí)控制,如定時(shí)中斷、定時(shí)檢測(cè)、定時(shí)掃描等等,也往往要求有計(jì)數(shù)器,對(duì)外部事件進(jìn)行計(jì)數(shù)。

要實(shí)現(xiàn)定時(shí)或者延時(shí)功能,一般有三種方法:軟件固定時(shí),不可編程硬件固定時(shí)和可編程硬件固定時(shí)。

1.軟件固定時(shí)——讓軟件循環(huán)執(zhí)行一段程序,程序本身并無(wú)執(zhí)行目的,而是通過(guò)執(zhí)行程序延時(shí)固定的時(shí)間,也就是以前的程序中經(jīng)常使用的延時(shí)程序。這種方法降低了cpu的利用率。

2.不可編程硬件固定時(shí)——如外部芯片555 時(shí)基電路,通過(guò)外部阻容,達(dá)到一定的延時(shí)功能,改變阻容大小可以改變延時(shí)長(zhǎng)度。這種定時(shí)器取決于硬件,設(shè)定好以后不能通過(guò)軟件更改。

3.可編程固定時(shí)器——這種定時(shí)器的定時(shí)值可以通過(guò)軟件確定和修改,使用靈活便捷。

定時(shí)器和計(jì)數(shù)器

時(shí)鐘周期:時(shí)鐘周期 T 是時(shí)序中最小的時(shí)間單位,具體計(jì)算的方法就是 1/時(shí)鐘源頻率,我們 KST-51 單片機(jī)開(kāi)發(fā)板上用的晶振是 11.0592M,那么對(duì)于我們這個(gè)單片機(jī)系統(tǒng)來(lái)說(shuō),時(shí)鐘周期=1/11059200 秒。

機(jī)器周期:?jiǎn)纹瑱C(jī)完成一個(gè)操作的最短時(shí)間。

定時(shí)器:定時(shí)器就是用來(lái)進(jìn)行定時(shí)的。定時(shí)器內(nèi)部有一個(gè)寄存器,我們讓它開(kāi)始計(jì)數(shù)后,這個(gè)寄存器的值每經(jīng)過(guò)一個(gè)機(jī)器周期就會(huì)自動(dòng)加 1,因此,我們可以把機(jī)器周期理解為定時(shí)器的計(jì)數(shù)周期。秒表,每經(jīng)過(guò)一秒,數(shù)字加1,而這個(gè)定時(shí)器就是每過(guò)一個(gè)機(jī)器周期的時(shí)間,也就是12/11059200秒,數(shù)字加1。還有一個(gè)特別注意的地方,就是秒表是加到60后,秒就自動(dòng)變成0了,這種情況在單片機(jī)和計(jì)算機(jī)里我們稱之為溢出。那定時(shí)器加到多少才會(huì)溢出呢?定時(shí)器有幾種模式,假如是16位的定時(shí)器,也就是2個(gè)字節(jié),最大值就是65535,那么加到65535后,再加1就算溢出,如果有其他位數(shù)的話,道理是一樣的,對(duì)于51單片機(jī)來(lái)說(shuō),溢出后,這個(gè)值會(huì)直接變成0。從某一個(gè)初值,經(jīng)過(guò)計(jì)算確定的時(shí)間后溢出,這個(gè)過(guò)程就是其定時(shí)的含義。



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