SET1: LCALL DISPLAY ;键释放等待时调用显示程序(调分)
AJMP SET2 ;防止键按下时无时钟显示
SET3: LCALL DISPLAY ;等待调分按键时时钟显示用
JNB P1.1, FUNSUB ;减1分操作
AJMP SET4 ;调分等待
SET5: LCALL DISPLAY ;键释放等待时调用显示程序(调小时)
AJMP SETHH1 ;防止键按下时无时钟显示
SET7: LCALL DISPLAY ;等待调小时按键时时钟显示用
JNB P1.1, FUNSUBB ;小时减1操作
AJMP SET6 ;调时等待
SETOUT1: LCALL DISPLAY ;退出时钟调整时键释放等待
AJMP SETOUT ;防止键按下时无时钟显示
;FUNSUB,分减1程序?
FUNSUB: LCALL DS20MS ;消抖
JB P1.1,SET41 ;干扰,返回调分等待
FUNSUB1: JNB P1.1,FUNSUB1 ;等待键放开
MOV R0,#77H ;
LCALL SUB1 ;分减1程序
LJMP SET4 ;返回调分等待
;
SET41: LJMP SET4 ;
;FUNSUBB,时减1程序 ;
FUNSUBB: LCALL DS20MS ;消抖
JB P1.1,SET61 ; 干扰,返回调时等待
FUNSUBB1: JNB P1.1,FUNSUBB1 ; 等待键放开
MOV R0,#79H ;
LCALL SUBB1 ; 时减1程序
LJMP SET6 ; 返回调时等待
;
SET61: LJMP SET6
;***************************************
;; 显示程序 ;;
;***************************************
; 显示数据在70H-75H单元内,用六位LED共阳数码管显示,P0口输出段码数据,P2口作
; 扫描控制,每个LED数码管亮1MS时间再逐位循环。
DISPLAY: MOV R1,DISPFIRST ;指向显示数据首址
MOV R5,#0FEH ;扫描控制字初值
PLAY: MOV A,R5 ;扫描字放入A
MOV P2,A ;从P2口输出
MOV A,@R1 ;取显示数据到A
MOV DPTR,#TAB ;取段码表地址
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] 下一页
本文关键字:程序 51单片机,单片机-工控设备 - 51单片机