在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

51單片機定時器使用時非常重要的6點經驗詳細的總結

2oON_changxuemc ? 來源:未知 ? 作者:易水寒 ? 2018-07-01 09:17 ? 次閱讀

單片機定時器的使用可以說非常簡單,只要掌握原理,有一點的C語言基礎就行了。要點有以下幾個:

1. 一定要知道英文縮寫的原形,這樣寄存器的名字就不用記了。

理解是最好的記憶方法。好的教材一定會給出所有英文縮寫的原形。

2. 盡量用形像的方法記憶。

比如TCON和TMOD兩個寄存器各位上的功能,教程一般有個圖表,你就在學習中不斷回憶那個圖表的形像。

3. TMOD:定時器/計數器模式控制寄存器(TIMER/COUNTER MODE CONTROL REGISTER)

定時器/計數器模式控制寄存器TMOD是一個逐位定義的8位寄存器,但只能使用字節尋址,其字節地址為89H。其格式為:其中低四位定義定時器/計數器C/T0,高四位定義定時器/計數器C/T1,各位的說明:

(1)GATE——門控制。

GATE=1時,由外部中斷引腳INT0、INT1來啟動定時器T0、T1。

當INT0引腳為高電平時TR0置位,啟動定時器T0;

當INT1引腳為高電平時TR1置位,啟動定時器T1。

GATE=0時,僅由TR0,TR1置位分別啟動定時器T0、T1。

(2)C/T——功能選擇位

C/T=0時為定時功能,C/T=1時為計數功能。

置位時選擇計數功能,清零時選擇定時功能。

(3)M0、M1——方式選擇功能

由于有2位,因此有4種工作方式:

M1M0 工作方式 計數器模式 TMOD(設置定時器模式)

0 0 方式0 13位計數器 TMOD=0x00

0 1 方式1 16位計數器 TMOD=0x01

1 0 方式2 自動重裝8位計數器 TMOD=0x02

1 1 方式3 T0分為2個8位獨立計數器,T1為無中斷重裝8位計數器 TMOD=0x03

單片機定時器0設置為工作方式1為TMOD=0x01

這里我們一定要知道,TMOD的T是TIMER/COUNTER的意思,MOD是MODE的意思。至于每位上的功能,你只要記住圖表,并知道每個英文縮寫的原型就可以了。

在程序中用到TMOD時,先立即回憶圖表,并根據縮寫的單詞原形理出每位的意義,如果意義不是很清楚,就查下手冊,幾次下來,TMOD的圖表就已經在腦子里了。

8位 GATE位,本身是門的意思。

7位 C/T Counter/Timer

6位 M1 Mode 1

5位 M0 Mode 0

4. TCON: 定時器/計數器控制寄存器(TIMER/COUNTER CONTROL REGISTER)

TMOD分成2段,TCON控制更加精細,分成四段,在本文中只要用到高四段。

TF0(TF1)——計數溢出標志位,當計數器計數溢出時,該位置1。

(1)TR0(TR1)——定時器運行控制位

當TR0(TR1)=0 停止定時器/計數器工作

當TR0(TR1)=1 啟動定時器/計數器工作

(2)IE0(IE1)——外中斷請求標志位

CPU采樣到P3.2(P3.3)出現有效中斷請求時,此位由硬件置1。在中斷響應完成后轉向中斷服務時,再由硬件自動清0。

(3)IT0(IT1)——外中斷請求信號方式控制位

當IT0(IT1)=1 脈沖方式(后沿負跳有效)

當IT0(IT1)=0 電平方式(低電平有效)此位由軟件置1或清0。

(4)TF0(TF1)——計數溢出標志位

當計數器產生計數溢出時,此位由硬件置1。當轉向中斷服務時,再有硬件自動清0。計數溢出的標志位的使用有兩種情況:采用中斷方式時,作中斷請求標志位來使用;采用查詢方式時,作查詢狀態位來使用。注意記憶方法,理解單詞原形,就絕對不會把TF和TR搞混。TF的F也就是溢出Over Flow的F。TR的R就是運行Run。默認是0不運行,當然要置1才運行。

5. STC單片機STC89C52RC定時器延時時間的計算

延時時間要根據晶振頻率計算,不同板子可能有所不同。

時鐘周期:

1/時鐘源,晶振頻率是11.0592M,那么時鐘周期就是 1/11059200秒

機器周期:

一般51單片機是12個時鐘周期,也就是 12/11059200秒

單次定時最長時間:

如果是16位的計數器,16位最大值是65535,共可計數65536次。基本的常數一定要記住,還要記住8位最大值是255,共可計數256次,還要記住8位上每位代表的數值。

12 * 65536/11059200 = 0.0711 s,也就是,71 ms內的定時可以單次定時就完成。如果定時時間超過71 ms,就要循環了。

一次定時需要幾次機器周期:

計算公式:定時秒數/機器周期

比如要定時1秒, 1/(12/11059200)= 921600次,16位計數器最大可計數65536次,921600次早就益出了。我們可以每次定時10 ms,循環100次就可以定時1秒了,1 s縮小100百倍就是10 ms, 也就是每次需要計數9216次。

確實計數器初始值:

定時10 ms時,如果計數器從0開始計數,就不知道什么時候到了9216次。所以應該計數了9216次,16位計數器最多計數95536次,然后就溢出,一溢出TCON的TF位就會置1,只要經常檢測TF位就可以知道什么時候完成10ms的定時了。

計算公式:計數器初始值=最大計數次數 - 需要計數次數

如果定時10 ms,計數器的初始值就是 65536 - 9216

計算計數器的高位和低位:

16位的計數器,也就是兩個8位組成,8位的最大計數次數是256。所以:

計數器高位 = 初始值/256

計數器低位 = 初始值%6

6.STC89C52RC單片機定時器示例代碼:

51單片機定時器使用時非常重要的6點經驗詳細的總結

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 51單片機
    +關注

    關注

    277

    文章

    5707

    瀏覽量

    126039
  • C語言
    +關注

    關注

    180

    文章

    7628

    瀏覽量

    139827
  • 定時器
    +關注

    關注

    23

    文章

    3273

    瀏覽量

    116809

原文標題:51單片機定時器使用經驗總結

文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    關于51單片機中斷與定時器的知識總結的太棒了

    關于51單片機中斷與定時器的知識總結的太棒了
    發表于 10-08 08:52

    基于51單片機定時器2的操作與實現

    基于51單片機定時器2的操作與實現,51單片機定時器2的使用!
    發表于 02-22 17:53 ?14次下載

    51單片機定時器寄存器設置及應用詳細

    51單片機定時器寄存器設置及應用詳細
    發表于 03-28 16:46 ?7次下載

    51單片機課件定時器

    51單片機課件定時器
    發表于 05-10 11:24 ?3次下載

    52單片機有幾個定時器?52單片機定時器1和52單片機定時器2程序對比

    52單片機有幾個定時器?STC89C52RC其實是有三個定時器單片機,STC89C52RC共有3個定時器,分別是T0、T1、T2。而
    發表于 11-10 14:30 ?3.6w次閱讀

    51單片機定時器工作原理

    51單片機定時器工作原理及用法
    的頭像 發表于 03-14 13:51 ?9.7w次閱讀

    51單片機學習教程之51單片機的六點知識點介紹

    本文檔的主要內容詳細介紹的是51單片機學習教程之51單片機的六點知識點介紹包括了:1.51
    發表于 04-17 17:27 ?3次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>學習教程之<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的六<b class='flag-5'>點知識點</b>介紹

    51單片機的應該如何使用定時器詳細資料和實例說明

    本文檔的主要內容詳細介紹的是51單片機的應該如何使用定時器詳細資料和實例說明。
    發表于 08-29 17:28 ?2次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>的應該如何使用<b class='flag-5'>定時器</b><b class='flag-5'>詳細</b>資料和實例說明

    51單片機定時器T0的中斷使用法詳細說明

    本文檔的主要內容詳細介紹的是51單片機定時器T0的中斷使用法詳細說明程序免費下載。
    發表于 08-22 17:30 ?0次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>定時器</b>T0的中斷使用法<b class='flag-5'>詳細</b>說明

    如何同時使用51單片機定時器0和串口使用問題詳細說明

    本文檔的主要內容詳細介紹的是如何同時使用51單片機定時器0和串口使用問題詳細說明。
    發表于 08-13 17:32 ?27次下載
    如何同時使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>定時器</b>0和串口使用問題<b class='flag-5'>詳細</b>說明

    51單片機定時器和計數器的使用資料詳細說明

    本文檔的主要內容詳細介紹的是51單片機定時器和計數器的使用資料詳細說明。
    發表于 07-09 17:40 ?1次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>定時器</b>和計數器的使用資料<b class='flag-5'>詳細</b>說明

    基于51單片機定時器

    設計思路。這樣自己拿到任何型號的51單片機,只要有原理圖,都可以自主設計。博主剛接觸單片機,才疏學淺,可能會出現設計不足和錯誤,歡迎大家評論區交流。^ _ ^/**********************************
    發表于 11-04 21:06 ?35次下載
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>定時器</b>

    51單片機——定時器的原理和使用

    定時器的原理1.cpu時序的有關知識震蕩周期:為單片機提供定時信號的震蕩源的周期(由外部的晶振)狀態周期:2個震蕩周期,用s表示機械周期 6個狀態周期,12個震蕩周期 (12MHz的晶
    發表于 11-10 18:50 ?71次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>——<b class='flag-5'>定時器</b>的原理和使用

    51單片機——定時器

    51單片機——定時器為什么使用定時器定時器原理?定時器設置中斷配置源代碼為什么使用
    發表于 11-11 16:36 ?40次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>——<b class='flag-5'>定時器</b>

    51單片機定時器問題總結

    51單片機定時器中斷的理解個人最近幾天學習總結51單片機定時
    發表于 11-23 16:51 ?2次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>定時器</b>問題<b class='flag-5'>總結</b>
    主站蜘蛛池模板: www.亚洲黄色| 色色色色色色色色色色色色色色 | 黄网免费 | 亚洲午夜网未来影院 | 激情五月激情综合网 | 一区二区三区免费视频网站 | 免费一级特黄 欧美大片 | 农村苗族一级特黄a大片 | 狠狠操狠狠操 | 黑色丝袜在丝袜福利国产 | 免费jlzzjlzz在线播放视频 | 三级毛片在线免费观看 | 特黄特色大片免费视频播放 | 黑森林福利视频导航 | 久久综合五月开心婷婷深深爱 | 免费在线公开视频 | 最新色视频 | 老司机精品免费视频 | 天天操综合视频 | 日本三级网站在线观看 | 国产一级做a爰片久久毛片男 | 久草男人天堂 | 在线视频h | 色多多www | 又色又爽的视频 | 久久婷婷久久一区二区三区 | 又污又黄的网站 | 亚洲国产欧美在线成人aaaa | 狠狠躁夜夜躁人人爽天天3 狠狠躁夜夜躁人人爽天天段 | 久久久婷婷亚洲5月97色 | 夜夜夜夜曰天天天天拍国产 | 不卡精品国产_亚洲人成在线 | 五月婷婷深爱五月 | 欧美精品黑人性xxxx | 97人人射| 亚洲免费网站在线观看 | 午夜精品久久久久久久第一页 | 亚洲综合色一区二区三区小说 | 久久久中文 | 天天噜日日噜夜夜噜 | 明日花在线观看 |