级
MOV P0,#8DH 地址
CALL ENABLE MOV A,#31H ;显示'1' ;第1行第5位
ACALL
MOV AJMP A1 CASE1: CJNE A,#1,CASE2 MOV 位地址
CALL ENABLE MOV ACALL
MOV AJMP A1 CASE2: CJNE A,#2,A1 MOV P0,#8DH 位地址
CALL
MOV A,#33H ACALL
MOV
WRITE2
DELAY_V,#4 A,SPD P0,#8DH A,#32H WRITE2
DELAY_V,#3 A,SPD ENABLE
WRITE2
DELAY_V,#2 倍延时 第1行第13
显示'2' 倍延时 第1行第13
显示'3' 倍延时
;4 MOV ; ; ;3 MOV ; ; ;2
A1: SETB KEY1
JB KEY1,TOFF ;判断是否运行 ACALL
CHECK
;输入第2行首
MOV P0,#0C0H 地址
CALL ENABLE
MOV CALL WRITE1 JB 次运行
JNB POS: MOV MOV MOVC +DPTR MOV SETB FLAG 度标志位置位
ACALL DELAY2 AJMP LOOP NEG: MOV MOV MOV MOVC +DPTR MOV SETB FLAG
DPTR,#TABLE3 FLAG,KEY ; KEY2,NEG
; DPTR,#TAB A,R4
P1,A ; R4,#6
A,R4 DPTR,#TAB P1,A
;判断是否为首
判断正反转 首次运行正转9
首次运行反转
9度标志位置位
ACALL
DELAY2
AJMP LOOP KEY: MOV P2,#03H JNB KEY2,FZ
;读键盘情况
;判断正反转
CJNE R4,#08,LOOPZ 志
MOV LOOPZ: INC MOV MOV MOVC +DPTR MOV ACALL
AJMP LOOP
FZ: CJNE R4,#0FFH,LOOPF ;志
MOV LOOPF: DEC MOV MOV MOVC +DPTR MOV ACALL
AJMP LOOP
; R4,#0FFH
R4 ; A,R4 DPTR,#TAB P1,A DELAY2
R4,#8 R4
A,R4 DPTR,#TAB P1,A DELAY2
是否为结束标正转 是否为结束标
TOFF: ACALL CHECK
MOV P0,#0C0H ;输入第2行首地址
CALL ENABLE MOV DPTR,#TABLE2 CALL WRITE1 AJMP LOOP DELAY: MOV DJNZ RET
DELAY1: DD4: MOV DJNZ DJNZ RET DELAY2: A3:
ACALL DJNZ RET
CHECK: MOV CLR
SETB
R6,#60 R6,#0FFH
测忙 MOV R7,#5H MOV R3,DELAY_V R6,$ R7,DD4 R6,$
DELAY
R3,A3 P0,#0FFH ;LCD1602 RS
RW
相关推荐: