• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 電源與新能源 > 設計應用 > 單片機定時器/計數器的結構以及工作原理

    單片機定時器/計數器的結構以及工作原理

    作者: 時間:2018-07-27 來源:網絡 收藏

    定時器/計數器的結構

    本文引用地址:http://www.czjhyjcfj.com/article/201807/384291.htm

    定時器/計數器的實質是加1計數器(16位),由高8位和低8位兩個寄存器組成。TMOD是定時器/計數器的工作方式寄存器,確定工作方式和功能;TCON是寄存器,T0、T1的啟動和停止及設置溢出標志。

    計數器輸入的計數脈沖源

    系統的時鐘振蕩器輸出脈沖經12分頻后產生;

    T0或T1引腳輸入的外部脈沖源。

    計數過程

    每來一個脈沖計數器加1,當加到計數器為全1(即FFFFH)時,再輸入一個脈沖就使計數器回零,且計數器的溢出使TCON中TF0或TF1置1,向CPU發出中斷請求(定時器/計數器中斷允許時)。如果定時器/計數器工作于定時模式,則表示定時時間已到;如果工作于計數模式,則表示計數值已滿。

    定時應用

    用作定時器:此時設置為定時器模式,加1計數器是對內部機器周期計數(1個機器周期等于12個振蕩周期,即計數頻率為頻率的1/12)。計數值N乘以機器周期Tcy就是定時時間t 。

    計數運用

    用作計數器:此時設置為計數器模式,外部事件計數脈沖由T0或T1引腳輸入到計數器。每來一個外部脈沖,計數器加1。但對外部脈沖有基本要求:脈沖的高低電平持續時間都必須大于1個機器周期。

    工作方式寄存器(TMOD)

    GATE:門控位。

    GATE=0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時器/計數器工作;(即需要一個啟動條件)

    GATE=1時,要用軟件使TR0或TR1為1,同時外部中斷引腳也為高電平時,才能啟動定時器/計數器工作,即需要兩個啟動條件。

    C/T :定時/計數模式選擇位。

    C/T =0為定時模式; C/T =1為計數模式。

    M1M0:工作方式設置位。

    計數器工作方式選擇

    M1 M0 工 作 方 式 功 能 說 明

    0 0 方式0 13位計數器

    0 1 方式1 16位計數器

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

    1 1 方式3 定時器0:分成兩個8位

    定時器1:停止計數

    定時器/計數器的

    控制寄存器TCON

    TCON的低4位用于控制外部中斷,已在前面介紹。TCON的高4位用于控制定時器/計數器的啟動和中斷申請。其格式如下:

    TF1(TCON.7):T1溢出中斷請求標志位。T1計數溢出時由硬件自動置TF1為1。CPU響應中斷后TF1由硬件自動清0。TR1(TCON.6):T1起/停控制位。1:啟動 0:停止

    TF0(TCON.5):T0溢出中斷請求標志位,其功能與TF1類同。

    TR0(TCON.4):T0起/??刂莆?。1:啟動 0:停止

    定時器/計數器的工作方式

    方式1

    方式1為13位計數,由TL0的低5位(高3位未用)和TH0的8位組成TL0的低5位溢出時向TH0進位,TH0溢出時,置位TCON中的TF0標志,向CPU發出中斷請求。

    方式2

    方式2的計數位數是16位,由TL0(TL1)作為低8位、TH0(TH1)作為高8位,組成了16位加1計數器 。

    方式3

    方式3為自動重裝初值的8位計數方式。

    在方式3下,當計數器計滿255(FFH)溢出時,CPU自動把TH 的值裝入TL中,不需用戶干預。因此特別適合于用作較精確的脈沖信號發生器。

    方式4

    方式4只適用于定時器/計數器T0,定時器T1方式3時相當于TR1=0,停止計數。

    工作方式4將T0分成為兩個獨立的8位計數器TL0和TH0 。



    關鍵詞: 控制 單片機 晶振

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 方正县| 建昌县| 衡阳市| 阿拉善左旗| 贺兰县| 兴隆县| 治县。| 吐鲁番市| 沈阳市| 张家港市| 博野县| 肃南| 聂拉木县| 吴旗县| 永泰县| 江阴市| 曲水县| 西平县| 甘肃省| 梨树县| 柘城县| 青川县| 东港市| 新河县| 和田市| 越西县| 行唐县| 富川| 福建省| 龙井市| 慈利县| 巫山县| 裕民县| 惠水县| 博客| 桐城市| 荃湾区| 普兰县| 沽源县| 佛冈县| 环江|