您当前的位置:五五电子网电子知识单片机-工控设备51单片机用单片机89C2051制作的延时控制器 正文
用单片机89C2051制作的延时控制器

用单片机89C2051制作的延时控制器

点击数:7822 次   录入时间:03-04 11:41:52   整理:http://www.55dianzi.com   51单片机

;***************************************************

;*      用 单片机 89C2051 制作的延时控制器       *

;*       T0 、 TT0 配合构成为秒脉冲发生器               *

;*       TSBIN 为秒计数器(二进制, 0~60) ; 21H 单元   *

;*       TMBIN 为分计数器(二进制, 0~60) ; 22H 单元   *

;*       THBIN 为时计数器(二进制, 0~24) ; 23H 单元   *

;*       KEYCODE 为键盘值; 29H 单元                   *

;*       KEYPRE 为按键标志字; PSW.5                  *

;*       当倒计时至 00H00M00S 时, P3.0, P3.1 端输出    *

;*       反相信号。                                  *

;*       S1---- 对时按钮; S2 --对分按钮;            *

;*       S3 --对秒按钮; S4 --退出对时              *   

;***************************************************

 

       TMSBIN EQU 20H

       TSBIN EQU 21H

       TMBIN EQU 22H

       THBIN EQU 23H

       KEYCODE EQU 29H

       TT0 EQU 2BH

       OUT EQU 2DH

 

       KEYPRE BIT PSW.5

      

       DPS1 DATA 11001111B   ;S4

       DPM0 DATA 11010111B        ;S3

       DPM1 DATA 11011111B ;S2

       DPH0 DATA 11100111B ;S1

       DPH1 DATA 11101111B

       HIDE DATA 11111111B    ; 消隐字

 

       ORG 0000H

       AJMP MAIN

 

       ORG 000BH

       SJMP I_T0

 

       ORG 001BH

I_T1:       AJMP MAIN1

       RETI

 

;***********    T0 中断服务     ***********

       ORG 0030H

I_T0:       PUSH ACC

       PUSH PSW

       MOV TH0,#0DCH          ;0.01s 时间,常数因子为 DC00H

       ;MOV TL0,#00H    

       CLR C

       MOV A,TMSBIN

       SUBB A,#01H

       MOV TMSBIN,A

       MOV R3,TT0        

       DJNZ R3,I_T01             ; 中断次数 <100 (每次中断 0.01S ) , 转出

       CPL KEYPRE

       MOV R3,#100               ; 中断次数= 100 次,重新下一个计数

       MOV TMSBIN,#100

       CLR C

       MOV A,TSBIN              ; 秒计数器加 1

       SUBB A,#01H

       MOV TSBIN,A

       ;SUBB A,#60         ; 秒计数器 >59?   Y ,秒计数器= 00

[1] [2] [3] [4] [5]  下一页


本文关键字:单片机  控制器  制作  51单片机单片机-工控设备 - 51单片机