|
ORG 0000H
D5 EQU 33H
D6 EQU 34H
WEI1 EQU P1.3
WEI2 EQU P1.4
AJMP MAIN
ORG 0030H
SJMP LOOP
ORG 0050H
MAIN: SETB P1.0
CLR P3.0
CLR P3.6
ACALL DELAY
SETB P3.0
SETB P3.6
WAIT:
JB P1.1,DONE
SJMP WAIT
DONEL: CLR P3.0
CLR P3.7
MOV A, P0
CLR C
SUBB A, #0F4H
JNC D1
MOV A,P0
SETB C
SUBB A,#0003H
JC D2
SJMP LOOP
D1: CLR P1.2
SJMP BACK
D2:SETB P1.2
SJMP BACK
BACK:ACALL D10S
SJMP LOOP
D10s:
MOV R3,#19H
LOOP3: MOV R1,#85H
LOOP1: MOV R2,#0FH
LOOP2:
DJNZ R2, LOOP2
DJNZ R1, LOOP1
DJNZ R3, LOOP3
RETI
LOOP: MOV A,P0
MOV P2, A
ACALL TRAN
ACALL DISP
CLR P1.0
CLR P3.0
CLR P3.6
ACALL DELAY
SETB P3.0
SETB P3.6
WAITI: JB P1. 1, DONE
SJMP WAIT
DONE: CLR P3.0
CLR P3.7
MOV A, P0
CLR C
SUBB A,#0AAH
JNC A1
MOV A, P0
SUBB A,#55H
JNC A2
SETB P1.5
CLR P1.6
CLR P1.7
SJMP MAIN
A1:SETB P1.7
CLR P1.6
CLR P1.5
SJMP MAIN
A2:SETB P1.6
CLR P1.5
CLR P1.7
SJMP MAIN
DELAY: MOV R5,#5
DL1: MOV R6,#10
DL2: MOV R7,#10
DJNZ R6,DL2
DJNZ R5,DL1
RETI
TRAN: MOV A, P2
MOV B, #10H
DIV AB
MOV D5, A
MOV D6, B
RET
DISP: MOV DPTR,#TAB
SETB P1.3
MOV A,D5
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY1
CLR P1.3
SETB P1.4
MOV A,D6
MOVC A,@A+DPTR
MOV P2,A
ACALL DELAY1
CLR P1.4
MOV P2, #0FFH
RET
DELAY1: MOV R6,#5
DO:MOV R7,#200
DJNZ R7,$
DJNZ R6, DO
RET
TAB: DB 28H
DB 0EBH
DB 32H
DB 0A2H
DB 0E1H
DB 0A4H
DB 24H
DB 0EAH
DB 20H
DB 0A0H
DB 60H
DB 25H
DB 3CH
DB 23H
DB 34H
DB 74H
DB 0D7H
DB 0F7H
DB 61H
DB 70H
DB 0DFH
DB 27H
DB 0FFH
END
|
|