8051定時器

P3.2口輸出週期爲2S的方波,T1口爲脈衝輸入端,記錄輸入的脈衝個數,脈衝個數由P1口所接的8個數碼管顯示,設一按鍵作爲開關控制系統運行

實現程序:

        org  0000h

        ljmp MAIN

        org  0003h

        ljmp INT0

        org  000bh

        ljmp TIME0

        org  0013h

        ljmp INT1

        org  001bh

        ljmp TIME1

        org  0030h

MAIN:

        mov  tmod ,#01010001b ;設置定時器1爲計數,定時器0爲定時

        MOV  TH0  ,#3CH     ;設置定時器0的定時常數

        MOV  TH0  ,#0B0H

        mov  p1   ,#00h  

        mov  th1  ,#0ffh

        mov  tl1  ,#00h

        mov  a    ,#00h

        mov  r0   ,#00h

 

        SETB EA

        SETB EX0

        setb ex1

        SETB ET0

        setb ET1

        SETB IT1

        SETB IT0

        SETB TR0

        ;mov  ip ,#02h

        setb tr1

        AJMP $ 

INT0:

     reti

INT1:

        CPL  00H

        JB   00H  ,Open

        clr  tr0

        clr  tr1  

        reti

Open:

        MOV  TH0 ,#3CH

        MOV  TL0 ,#0B0H

        SETB TR0

        setb tr1

        MOV  R0  ,#00H

        reti

TIME0:  MOV  TH0 ,#3CH

        MOV  TL0 ,#0B0H

        INC  R0

        CJNE R0  ,#0aH ,BYETIME0

        cpl  p3.2

        mov  p1,tl1

        MOV  R0  ,#00H

BYETIME0:

        reti        

TIME1:

        mov th1  ,#0ffh

        mov tl1  ,#00h

        ;inc a

        ;mov p1,a

        reti

發佈了31 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章