《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 其他 > 教程:51單片機(jī)定時(shí)器概述及例程分析

教程:51單片機(jī)定時(shí)器概述及例程分析

2023-01-31
來(lái)源:滑小稽筆記

  6.1 單片機(jī)" target="_blank">51單片機(jī)定時(shí)器概述

  6.1.1 定時(shí)器的描述

  要實(shí)現(xiàn)定時(shí)功能,除了利用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器,也可以采用下面三種方法:

  (1)軟件定時(shí):軟件定時(shí)不占用硬件資源,但占用了CPU時(shí)間,降低了CPU的利用率。

  (2)采用時(shí)基電路定時(shí):例如采用555電路,外接必要的元器件(電阻和電容),即可構(gòu)成硬件定時(shí)電路。但在硬件連接好以后,定時(shí)值與定時(shí)范圍不能由軟件進(jìn)行控制和修改,即不可編程。

  (3)采用可編程芯片定時(shí):這種定時(shí)芯片的定時(shí)值及定時(shí)范圍很容易用軟件來(lái)確定和修改,此種芯片定時(shí)功能強(qiáng),使用靈活。在單片機(jī)的定時(shí)/計(jì)數(shù)器不夠用時(shí),可以考慮進(jìn)行擴(kuò)展。

  定時(shí)/計(jì)數(shù)器的實(shí)質(zhì)是加1計(jì)數(shù)器(16位),由高8位和低8位兩個(gè)寄存器組成。TMOD是定時(shí)/計(jì)數(shù)器的工作方式寄存器,確定工作方式和功能;TCON是控制寄存器,控制T0,T1的啟動(dòng)和停止及設(shè)置溢出標(biāo)志。

  加1計(jì)數(shù)器輸入的計(jì)數(shù)脈沖有兩個(gè)來(lái)源,一個(gè)是由系統(tǒng)的時(shí)鐘振蕩器輸出脈沖經(jīng)12分頻后送來(lái);另一個(gè)是 T0 或T1引腳輸入的外部脈沖源。每來(lái)一個(gè)脈沖計(jì)數(shù)器加1,當(dāng)加到計(jì)數(shù)器為全1時(shí),再輸入一個(gè)脈沖就使計(jì)數(shù)器回零,且計(jì)數(shù)器的溢出會(huì)使TCON中TF0或TF1置1,向CPU發(fā)出中斷請(qǐng)求(定時(shí)/計(jì)數(shù)器中斷允許時(shí))。如果定時(shí)/計(jì)數(shù)器工作于定時(shí)模式,則表示定時(shí)時(shí)間已到;如果工作于計(jì)數(shù)模式,則表示計(jì)數(shù)值已滿(mǎn)。可見(jiàn),由溢出時(shí)計(jì)數(shù)器的值減去計(jì)數(shù)初值才是加1計(jì)數(shù)器的計(jì)數(shù)值。

  設(shè)置為定時(shí)器模式時(shí),加1計(jì)數(shù)器是對(duì)內(nèi)部機(jī)器周期計(jì)數(shù)(1個(gè)機(jī)器周期等于12個(gè)振蕩周期,即計(jì)數(shù)頻率為晶振頻率的1/12)。計(jì)數(shù)值乘以機(jī)器周期就是定時(shí)時(shí)間。

  設(shè)置為計(jì)數(shù)器模式時(shí),外部事件計(jì)數(shù)脈沖由T0或T1引腳輸入到計(jì)數(shù)器。在每個(gè)機(jī)器周期的某個(gè)期間采樣T0、T1引腳電平。當(dāng)某周期采樣到一高電平輸入,而下一周期又采樣到一低電平時(shí),則計(jì)數(shù)器加1,更新的計(jì)數(shù)值在下一個(gè)機(jī)器周期裝入計(jì)數(shù)器。由于檢測(cè)一個(gè)從1到0的下降沿需要2個(gè)機(jī)器周期,因此要求被采樣的電平至少要維持一個(gè)機(jī)器周期。當(dāng)晶振頻率為12MHz 時(shí),最高計(jì)數(shù)頻率不超過(guò)6MHz,即計(jì)數(shù)脈沖的周期要大于2us。

  6.1.2 51單片機(jī)定時(shí)器結(jié)構(gòu)

267.JPG

  6.1 定時(shí)器中斷相關(guān)寄存器

  6.1.1 工作模式寄存器TMOD

  寄存器地址:0x89

266.JPG

  Bit 7:定時(shí)器1門(mén)控

  0:關(guān)閉門(mén)控,只要TR1為1,就可以啟動(dòng)定時(shí)/計(jì)數(shù)器工作

  1:開(kāi)啟門(mén)控,此時(shí)只有當(dāng)TR1為1且外部中斷引腳為高電平時(shí),才能夠啟動(dòng)定時(shí)器工作

  Bit 6:定時(shí)器1工作模式選擇

  0:定時(shí)模式,時(shí)鐘源來(lái)自MCU內(nèi)部

  1:計(jì)數(shù)模式,時(shí)鐘源來(lái)自T1引腳上

  Bit 5~Bit 4:定時(shí)器1計(jì)數(shù)模式選擇

  00:數(shù)據(jù)寄存器使用13位

  01:數(shù)據(jù)寄存器使用16位

  10:8位自動(dòng)重裝定時(shí)/計(jì)數(shù)器

  11:T1停止計(jì)數(shù)

  Bit 3:定時(shí)器0門(mén)控

  0:關(guān)閉門(mén)控,只要TR0為1,就可以啟動(dòng)定時(shí)/計(jì)數(shù)器工作

  1:開(kāi)啟門(mén)控,此時(shí)只有當(dāng)TR0為1且外部中斷引腳為高電平時(shí),才能夠啟動(dòng)定時(shí)器工作

  Bit 2:定時(shí)器0工作模式選擇

  0:定時(shí)模式,時(shí)鐘源來(lái)自MCU內(nèi)部

  1:計(jì)數(shù)模式,時(shí)鐘源來(lái)自T0引腳上

  Bit 1~ Bit 0:定時(shí)器0計(jì)數(shù)模式選擇

  00:數(shù)據(jù)寄存器使用13位

  01:數(shù)據(jù)寄存器使用16位

  10:8位自動(dòng)重裝定時(shí)/計(jì)數(shù)器

  11:T0分成兩個(gè)獨(dú)立的8位定時(shí)/計(jì)數(shù)器

  6.1.2 定時(shí)器0數(shù)據(jù)寄存器高字節(jié)TH0

  寄存器地址:0x8C

265.JPG

  6.1.3 定時(shí)器0數(shù)據(jù)寄存器低字節(jié)TL0

  寄存器地址:0x8A

264.JPG

  6.1.4 定時(shí)器1數(shù)據(jù)寄存器高字節(jié)TH1

  寄存器地址:0x8D

263.JPG

  6.1.5 定時(shí)器1數(shù)據(jù)寄存器低字節(jié)TL1

  寄存器地址:0x8B

262.JPG

  6.2 例程分析

  6.2.1 原理圖

 261.JPG

  6.2.2 實(shí)現(xiàn)的功能

  使用定時(shí)器0,控制LED以1Hz頻率閃爍。

  6.2.3 源代碼

260.JPG

  重點(diǎn)關(guān)注以下幾行代碼:

  第20行:定義了一個(gè)unsigned char的變量,為什么要定義這樣一個(gè)全局變量。首先定時(shí)器的數(shù)據(jù)寄存器只有16位,也就是說(shuō)最大數(shù)據(jù)范圍只有65535,超過(guò)這個(gè)數(shù)據(jù)后就會(huì)從0重新開(kāi)始計(jì)時(shí),根據(jù)單片機(jī)的計(jì)數(shù)周期設(shè)置在1us,最大定時(shí)時(shí)間只有65.535ms,而達(dá)到1s是遠(yuǎn)遠(yuǎn)不夠的,所以定義一個(gè)全局變量來(lái)計(jì)算定時(shí)器產(chǎn)生中斷的次數(shù),假設(shè)我們?cè)O(shè)置定時(shí)器50ms中斷一次,那么,當(dāng)進(jìn)入20次中斷,則意味著定時(shí)器剛好定時(shí)1s。

  第28行:這里用到了一條語(yǔ)句,LED = !LED,嘆號(hào)代表取反,只能用于布爾型變量,所謂布爾型變量就是只有0和1兩種狀態(tài),也就是1個(gè)二進(jìn)制位,在C語(yǔ)言中,嘆號(hào)代表二進(jìn)制位取反,“~”則代表按位取反運(yùn)算,例如有一個(gè)二進(jìn)制位初值是1,取反的結(jié)果就是0,但是如果有一個(gè)字節(jié)0x8F,此時(shí)只能用按位取反運(yùn)算,而不能用二進(jìn)制位取反運(yùn)算,0x8F按位取反的結(jié)果應(yīng)該是0x70,例程中這條語(yǔ)句的含義就是LED二進(jìn)制位取反后將結(jié)果重新賦值給LED變量。

  第23行~第24行:這兩行用于給定時(shí)器重新寫(xiě)入初值,因?yàn)?1單片機(jī)的數(shù)據(jù)寄存器進(jìn)入中斷后就會(huì)從0開(kāi)始重新計(jì)數(shù),假設(shè)最開(kāi)始設(shè)置的值是1000,進(jìn)入中斷后,定時(shí)的時(shí)間就是65535-1000+1=64536us,進(jìn)入中斷如果不設(shè)置初值,那么下一次進(jìn)入中斷時(shí)定時(shí)的時(shí)間就是65536us,與最初的時(shí)間誤差是65536-64536=1000us,所以每次進(jìn)入中斷都需要給數(shù)據(jù)寄存器重新寫(xiě)入初值。

  第42行~第43行:定時(shí)器在初始化的時(shí)候就要給寫(xiě)入初始值,為什么要寫(xiě)入這個(gè)初始值呢,首先數(shù)據(jù)寄存器是只能加1運(yùn)算,從0加到65535,但是如果我們只想要定時(shí)50us就進(jìn)入中斷應(yīng)該怎么處理呢,這就需要給定時(shí)器的數(shù)據(jù)寄存器先寫(xiě)入一個(gè)數(shù),讓定時(shí)器從這個(gè)數(shù)開(kāi)始加1,加到65535剛好是50us,那么這個(gè)初值就是65535-50,這個(gè)定時(shí)的時(shí)間剛好就是50us,而/和%則是代表取整和取余。

  注:取整與取余運(yùn)算

  (1)取整運(yùn)算:用/表示,代表取除法運(yùn)算中整數(shù)部分,例如2/3,得到的結(jié)果就是商為0且余數(shù)為2,此時(shí)取整運(yùn)算得到的結(jié)果就是0;

  (2)取余運(yùn)算:用%表示,代表取除法運(yùn)算中余數(shù)部分,例如2/3,得到的結(jié)果就是商為0且余數(shù)為2,此時(shí)取余運(yùn)算得到的結(jié)果就是2。



 更多信息可以來(lái)這里獲取==>>電子技術(shù)應(yīng)用-AET<< 

mmexport1621241704608.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話(huà)通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話(huà):010-82306118;郵箱:aet@chinaaet.com。
欧美激情办公室aⅴ_国产欧美综合一区二区三区_欧美午夜精品久久久久免费视_福利视频欧美一区二区三区

          欧美综合国产| 亚洲精品欧美| 欧美二区视频| 欧美高清视频一区| 日韩午夜av在线| 欧美日韩一区二区高清| 久久精品盗摄| 国产自产精品| 国产精品一区在线播放| 久久久国产亚洲精品| 欧美1区免费| 亚洲高清资源综合久久精品| 国产精品夜夜夜| 午夜日本精品| 国产三区二区一区久久| 免播放器亚洲| 亚洲高清资源| 久久久精品动漫| 一本色道久久| 欧美亚州在线观看| 麻豆精品网站| 亚洲精品国产精品国自产观看| 老司机一区二区三区| 国内精品99| 亚洲精品乱码| 亚洲网站啪啪| 午夜国产欧美理论在线播放| 一区二区国产在线观看| 亚洲视频二区| 狠狠爱www人成狠狠爱综合网| 午夜精品电影| 一区二区久久| 噜噜噜久久亚洲精品国产品小说| 亚洲一区欧美二区| 国内精品久久久久久久97牛牛| 99亚洲一区二区| 韩日精品在线| 欧美日韩亚洲一区二区三区在线观看 | 亚洲国产mv| 久久久久久九九九九| 亚洲精选91| 亚洲国产精品日韩| 激情久久五月| 亚洲视频日本| 激情一区二区| 亚洲午夜极品| 激情国产一区| 亚洲一级高清| 激情偷拍久久| 亚洲国产一区二区三区在线播 | 国产伦理一区| 性欧美精品高清| 久久精品九九| 欧美日韩精品免费看 | 久久久综合网| 久久婷婷激情| 欧美日韩亚洲一区| 一区在线免费| 亚洲欧美成人综合| 欧美国产先锋| 国产精品久久国产三级国电话系列| 久久av最新网址| 99亚洲视频| 欧美日韩亚洲三区| 狠狠色综合色区| 亚洲欧美日本视频在线观看| 国产综合精品| 欧美高清视频一区| 国内精品国语自产拍在线观看| 国产一区二区三区久久久久久久久| 欧美日韩精品不卡| 黄色免费成人| 国产一区久久| 欧美午夜视频在线| 韩日成人在线| 久久精品系列| 看欧美日韩国产| 亚洲黄色一区| 久久久久国产精品一区二区| 国产精品综合| 亚洲手机视频| 亚洲视屏一区| 国产综合精品一区| 亚洲一级网站| 午夜宅男久久久| 国内精品久久久久久久97牛牛 | 99re6热在线精品视频播放速度 | 欧美精品七区| 亚洲国产日韩美| 久久狠狠久久综合桃花| 亚洲精品1区2区| 久久综合九色99| 夜夜精品视频| 激情久久中文字幕| 欧美日韩精品一本二本三本| 国产日本精品| 国内精品国语自产拍在线观看| 99精品久久久| 亚洲福利久久| 黄色av日韩| 午夜精品亚洲一区二区三区嫩草| 亚洲欧美bt| 中国成人在线视频| 亚洲精品一区二区三区蜜桃久| 欧美日韩精品久久| 久久久水蜜桃av免费网站| 99国内精品| 亚洲高清网站| 亚洲国产精品一区在线观看不卡| 国产精品v欧美精品v日韩| 亚洲狠狠婷婷| 国产精品分类| 欧美喷水视频| 欧美大片一区| 欧美日韩国产亚洲一区| 女主播福利一区| 久久久久久国产精品一区| 国产日韩一区二区三区在线播放| 99国产精品久久久久久久| 亚洲人成毛片在线播放女女| 精品成人国产| 亚洲精品麻豆| 国产日韩一区二区三区在线| 国产精品裸体一区二区三区| 国产精品丝袜xxxxxxx| 一本色道久久综合亚洲精品高清| 亚洲精品123区| 国自产拍偷拍福利精品免费一| 欧美在线视频二区| 欧美成人一品| 国精品一区二区| 伊人激情综合| 亚洲日韩成人| 国产精品久久久久久久免费软件| 亚洲欧美日本视频在线观看| 男女av一区三区二区色多| 久久一区二区精品| 欧美日韩在线大尺度| 亚洲二区视频| 亚洲综合丁香| 国产一区二区三区四区老人| 一本色道久久综合亚洲精品不卡| 亚洲国产精品久久久久久女王 | 国产欧美午夜| 西西人体一区二区| 国产精品草草| 99精品99久久久久久宅男| 国产女主播一区二区| 久久一二三四| 亚洲精品免费观看| 欧美在线亚洲综合一区| 在线看无码的免费网站| 国产伦精品一区二区三区四区免费| 久久精品成人| 亚洲日本无吗高清不卡| 久久天堂国产精品| 亚洲精品护士| 欧美激情亚洲| 每日更新成人在线视频| 亚洲经典自拍| 国产精品啊v在线| 欧美亚洲专区| 日韩午夜电影| 精品91免费| 欧美在线网址| 麻豆精品网站| 国产精品久久久久久久免费软件| 欧美日韩在线一区二区三区| 亚洲一区国产一区| 精品999网站| 久久久夜精品| 性8sex亚洲区入口| 国产日韩久久| 亚洲精品一区二区三| 国产一区久久| 欧美成人69av| 久久久久一区| 美女日韩在线中文字幕| 国产精品日本一区二区| 亚洲高清免费| 最新亚洲一区| 亚洲三级免费| 亚洲免费不卡| 亚洲精品韩国| 亚洲三级色网| 欧美激情性爽国产精品17p| 黑人一区二区三区四区五区| 久久久久久久久久码影片| 国产伦精品一区二区三区高清版| 91久久国产综合久久蜜月精品| 一区在线视频观看| 亚洲视频日本| 亚洲激情国产| 国产情侣一区| 欧美中文字幕| 午夜电影亚洲| 国内精品嫩模av私拍在线观看| 午夜视频久久久| 国产一区二区三区无遮挡| 欧美视频二区| 99精品国产高清一区二区| 国产日产高清欧美一区二区三区| 国产精品毛片| 欧美激情1区2区3区| 海角社区69精品视频| 亚洲激情综合| 先锋影音久久久| 欧美一区二区| 亚洲亚洲精品三区日韩精品在线视频| 国产一区日韩一区| 91久久精品www人人做人人爽| 一本久道久久综合婷婷鲸鱼| 亚洲欧美日韩另类精品一区二区三区| 国产精品区免费视频| 噜噜噜在线观看免费视频日韩| 欧美va天堂在线| 在线不卡视频| 久久激情视频| 亚洲电影成人| 久久久一本精品99久久精品66| 国产伊人精品| 免费永久网站黄欧美| 黑人中文字幕一区二区三区| 国产亚洲午夜| 海角社区69精品视频| 99综合在线| 欧美黄色一区| 韩日精品在线| 国产一级久久| 国产精品99免费看| 国产亚洲欧美一区二区| 狂野欧美一区| 亚洲性色视频| 久久久久网址| 国产一区二区久久久| 欧美激情一区| 性色一区二区三区| 亚洲日本久久| 欧美午夜视频| 久久一本综合频道| 妖精视频成人观看www| 国产精品播放| 欧美精品国产一区二区| 国产亚洲成人一区| 在线播放日韩| 午夜日韩电影| 久久久成人网| 国产精品美女黄网| 亚洲日本视频| 亚洲国产第一| 黄色在线一区| 欧美日产一区二区三区在线观看| 在线一区欧美| 精品999成人| 欧美午夜a级限制福利片| 国产女主播一区二区三区| 亚洲激情网址| 影音先锋在线一区| 亚洲性人人天天夜夜摸| 欧美体内she精视频在线观看| 国产日韩综合| 亚洲久色影视| 亚洲精品日韩在线观看| 激情成人亚洲| 亚洲国产欧美日韩| 极品av少妇一区二区| 亚洲视屏一区| 亚洲成色精品| 亚洲乱码视频| aa亚洲婷婷| 亚洲尤物精选| 久久久99爱| 欧美三级视频| 亚洲国产国产亚洲一二三| 亚洲伦理精品| 久久国产精品免费一区| 欧美一区二区| 黑丝一区二区| 国产一区二区黄色| 久久九九免费| 极品中文字幕一区| 99国产精品久久久久老师| 国产精品毛片va一区二区三区| 免费永久网站黄欧美| 欧美破处大片在线视频| 亚洲黄色三级| 麻豆精品91| 伊人婷婷久久| 麻豆久久久9性大片| 国产精品yjizz| 国产一区二区三区奇米久涩| 久久性天堂网| 亚洲精品乱码| 欧美成人一区二区在线 | 亚洲国产欧美不卡在线观看| 99亚洲精品| 欧美一区二区在线| 亚洲国产一区二区精品专区| 国产精品视区| 欧美精选在线| 国产精品久久久久久久免费软件| 久久一区二区精品| 亚洲欧洲综合| 午夜视频一区| 亚洲一区二区网站| 亚洲视频成人| 精品1区2区| 一区二区不卡在线视频 午夜欧美不卡'| 羞羞视频在线观看欧美| 欧美日韩99| 亚洲一区中文| 影院欧美亚洲| 女女同性女同一区二区三区91| 亚洲高清免费| 欧美二区在线| 先锋影音久久| 一本色道久久综合亚洲二区三区| 亚洲欧美亚洲| 亚洲一区综合| 亚洲激情社区| 国产一区二区中文| 久久久夜夜夜| 午夜亚洲影视| 一本色道久久综合亚洲精品婷婷 | 欧美1区2区| 国产欧美一区二区三区另类精品 | 国产精品一区视频| 影音先锋中文字幕一区| 欧美一区亚洲二区| 久久av一区二区三区| 国产精品日韩一区二区三区| 亚洲免费大片| 亚洲日本成人| 亚洲精品黄色| 一本久道久久久| 亚洲精品在线二区| 亚洲日本视频| 一区二区福利| 国产一区二区三区的电影| 亚洲激情婷婷| 日韩亚洲国产精品| 亚洲乱亚洲高清| 亚洲日本免费| 一区二区三区四区五区视频| 91久久国产综合久久蜜月精品| 精品成人在线| 日韩亚洲精品在线| 亚洲深爱激情| 亚洲一区二三| 久久久水蜜桃av免费网站| 久久久久久九九九九| 欧美一区二区三区久久精品| 午夜日韩激情| 伊人成人在线视频| 日韩视频在线观看国产| 亚洲少妇在线| 久久日韩精品| 国内不卡一区二区三区| 亚洲电影av| 亚洲精品在线视频观看| 午夜日韩电影| 午夜精品999| 午夜精彩国产免费不卡不顿大片| 欧美日韩视频在线一区二区观看视频| 欧美午夜不卡| 国产日韩欧美综合精品| 欧美一级二区| 国产精品国产一区二区| 亚洲麻豆av| 久久久久九九九| 狠狠88综合久久久久综合网| 一区二区不卡在线视频 午夜欧美不卡'| 国产精品日韩| 欧美精品亚洲| 国产欧美日本| 欧美成人一区二免费视频软件| 精品不卡一区二区三区| 一区二区高清| 欧美精品大片| 一区二区精品在线| 欧美搞黄网站| 亚洲视频www| 欧美日韩精品免费观看| 国产一区二区三区黄| 国产精品v欧美精品v日本精品动漫| 一区二区不卡在线视频 午夜欧美不卡'| 久久久久久九九九九| 激情久久婷婷| 欧美影视一区| 亚洲女优在线| 99精品国产一区二区青青牛奶| 午夜精品美女久久久久av福利| 亚洲美女黄色| 亚洲性人人天天夜夜摸| 欧美在线日韩| 香蕉久久夜色精品国产| 亚洲激情精品| 禁久久精品乱码| 欧美日韩免费观看一区| 久久精品毛片|