<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

      51單片機定時系統

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2011-4-11

              定時/計數器和中斷源的多少直接決定單片機的性能。MCS-51單片機內部有兩個可編程的16位定時/計數器和5個中斷源,具有較強的實時處理能力和對外部應急事件的處理能力。要充分發揮單片機的功能,必須充分利用定時和中斷。
      定時器/計數器
      一、定時和延時的區別
      在單片機程序清單中,經常看到延時子程序和定時(中斷)子程序。它們都能使單片機間隔一段時間后再做另一件事。例如,控制兩組燈的交替閃亮。以1999年第38期九版圖13為例,下面分別是用延時和定時方法的源程序。
      程序1:
      ORG 0000H
      AJMP MAIN
      ORG 50H
      MAIN:MOV P1,#0AAH;第一組燈亮
      ACALL DELAY ;調延時子程序
      MOV P1,#55H ;第二組燈亮
      ACALL DELAY ;調延時子程序
      AJMP MAIN ;循環
      DELAY:MOV R0,#08H ;延時子程序,當fc=6MHz時,約延時1秒
      L1:MOV R1,#0FFH ;
      L2:MOV R2,#0FFH;
      L3:DJNZ R2,L3
      DJNZ R1,L2
      DJNZ R0,L1
      RET
      END
      程序2:
      ORG 0000H
      AJMP MAIN
      ORG 0 WT0;轉T0中斷服務子程序
      ORG 50H
      MAIN:MOV 21 TL0,#6;裝入定時初值
      MOV TH0,#6;裝入重置定時初值
      MOV TMOD,#02H;設T0為工作方式2
      SETB EA;允許CPU中斷
      SETB ETO;允許TO中斷
      SETB TRO;允許TO計數
      MOV P1,#55H;
      CLR 00H
      M:P1,#55H;CPU去執行其他任務
      JNB 0 P1;定時到1秒,燈的狀態翻轉
      CLR 0 M;循環
      WTO:PUSH ACC;定時中斷服務子程序
      PUSH PSW;
      INC 21H
      MOV A,21H
      CJNE A,#200,TORETI
      MOV 21 22 A,22H
      CJNE A,#10,TORETI
      MOV 22 0 PSW
      POP ACC
      RETI
      END
             程序1中,點亮一組燈后,調用延時子程序,延時子程序結束后再點亮另一組燈,循環進行,單片機除能交替點亮兩組燈以外,全部時間都在運行延時子程序,別的什么事件都不能做了。程序2中,單片機絕大部分時間都在做其它事,只在定時到1秒鐘時改變燈的工作狀態,充分發揮了單片機的功能。因此,在實際應用中,“延時”只適用于特定的場合,而“定時”是靈活多變的。
      二、定時器的結構
              初學者不必去深入研究單片機的內部硬件電路,只要掌握單片機的使用方法,通過實際編程,充分發揮單片機的特定功能即可。與定時器有關的特殊功能寄存器之間的信號關系示于圖1。圖中,TLO、THO、TL1、TH1以及TMOD和TCON都是單片機的特殊功能寄存器。TLO和THO組成16位的定時/計數器(T0),TL1和TH1組成16位的定時/計數器(T1),TMOD是T0和T1的工作方式控制寄存器,TCON是T0和T1的運行狀態控制寄存器,這些寄存器在程序2中已多次出現。在實際應用時,應首先根據需要對這些寄存器進行初始化,即設置T0和T1的工作方式并對T0和T1定時器裝入初始值以得到精確的定時時間。T0和T1的工作方式及運行狀態是由TMOD和TCON兩個特殊功能寄存器控制的,而TMOD和TCON是由用戶所編的程序控制的。因此,學好用好定時/計數器必須掌握這些寄存器的功能及使用方法。
       
      三、TMOD
      TMOD是定時器的工作方式控制寄存器,其格式見表1。
      表1 定時器工作方式寄存器格式

      TMOD是8位的控制寄存器,低4位控制T0的工作方式,高4位控制T1的工作方式,其中:
      M1、M0是工作方式選擇位。決定定時器的4種工作方式。
      方式0:(M1=0、M0=0):13位定時/計數器
      方式1:(M1=0、M0=1):16位定時/計數器
      方式2:(M1=1、M0=0):8位定時/計數器(定時常數自動裝入)
      方式3:(M1=1、M0=1):把T0分為兩個8位計數器
      C/T:定時/計數方式選擇位
      C/T=0時為定時工作方式,在此方式下,計數脈沖來自單片機內部,計數脈沖頻率為一個機器周期,機器周期的時間是固定的,所以就可根據計數值算出計數時間。如程序2中,TL0初值為6,256-6=250,當計數器計250個脈沖后,計數器溢出。當fc=6MHz時,一個機器周期為2μs,因此T0溢出時,時間為500μs,T0定時時間為500μs。
      C/T=1時為計數工作方式,在這種方式下,計數脈沖來自外部引腳(T0對應P3??4腳,T1對應P3??5腳)。當T0腳(或T1腳)發生從高電平到低電平的跳變時,計數器加1。
      GATE:計數器工作方式控制位,當定時 / 計數器工作在計數方式時,由GATE設定計數器是否受外部控制。當GATE=0時,不受外部控制。當GATE=1時,計數器T0和T1分別受P3??2和P3??3腳上電平控制。當P3??2(或P3??3)腳為低電平時,計數器T0(或T1)開始計數,P3??2(或P3??3)腳為高電平時,T0(或T1)停止計數。

      Tags:單片機,定時系統,51單片機  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 国产香蕉尹人综合在线| 天天av天天翘天天综合网| 国产成人精品综合网站| 亚洲综合无码AV一区二区| 国产成人AV综合久久| 婷婷丁香五月天综合东京热| 色噜噜久久综合伊人一本| 色综合天天综合婷婷伊人| 国产成人综合久久久久久| 伊人久久大香线蕉综合Av| 久久99国产综合精品女同| 色综合久久久久无码专区| 国产精品亚洲综合久久| 一本久久综合亚洲鲁鲁五月天| 色婷婷久久综合中文久久一本| 伊人久久综合影院| 色综合视频一区二区三区44| 天天综合天天看夜夜添狠狠玩| 久久综合精品视频| 色九月亚洲综合网| 日韩亚洲人成在线综合日本| 色欲老女人人妻综合网| 色综合久久中文字幕综合网 | 久久综合香蕉国产蜜臀AV| 伊人久久大香线蕉综合热线| 成人综合国产乱在线| 婷婷五月综合缴情在线视频| 亚洲私人无码综合久久网| 亚洲色婷婷综合久久| 女人和拘做受全程看视频日本综合a一区二区视频 | 婷婷久久综合九色综合绿巨人| 亚洲AV综合色区无码另类小说 | 亚洲国产精品综合一区在线| 大香网伊人久久综合观看| 中文字幕亚洲综合精品一区| 久久久综合香蕉尹人综合网| 色综合小说久久综合图片| 青青草原综合久久| 婷婷色香五月综合激激情| 国产色综合天天综合网| 精品国产综合区久久久久久|