18
鍵輸入中斷子程序
KEY: PUSH DPL
PUSH DPH PUSH ACC PUSH B
MOV DPTR,#0DFFFH MOVX A,@DPTR ANL A,#0FH JZ PKYR MOV A,#40H MOVX @DPTR,A
MOV DPTR,#0DFFEH MOVX A,@DPTR MOV R2,A
ANL A,#38H RR A RR A RR A
MOV B,#08H MUL AB XCH A,R2 ANL A,#07H ADD A,R2 MOV 50H,A
SETB PSW.5
PKYR: POP B
POP ACC POP DPH POP DPL RET
顯示子程序1
RDIR1: PUSH DPL
PUSH DPH
MOV DPTR,#0DFFFH MOV A,#90H MOVX @DPTR,A SETB P1.0
MOV A,50H MOV DPTR,#TAB MOVC A,@A+DPTR MOV DPTR,#0DFFFH MOVX @DPTR,A LCALL DL
POP DPH POP DPL RET
TAB: DB 3FH,06H,5BH,4FH,66H
DB 6DH,7DH,06H,7FH,67H DB 77H,7CH,39H,5EH,79H,71H
顯示子程序2
RDIR2: PUSH DPL
PUSH DPH
MOV DPTR,#0DFFFH MOV A,#90H MOVX @DPTR,A MOV R3,#10H
LA1: SETB P1.3
MOV R0,#40H MOV A,@R0
MOV DPTR,#TAB1 MOVC A,@A+DPTR MOV DPTR,#0DFFEH MOVX @DPTR,A LCALL DL CLR P1.3 SETB P1.2 INC R0 MOV A,@R0
MOV DPTR,#TAB1 MOVC A,@A+DPTR MOV DPTR,#0DFFEH MOVX @DPTR,A LCALL DL CLR P1.2 SETB P1.1 INC R0 MOV A,@R0
MOV DPTR,#TAB1 MOVC A,@A+DPTR MOV DPTR,#0DFFEH MOVX @DPTR,A LCALL DL CLR P1.1 SETP P1.0
19
INC R0 MOV A,@R0
MOV DPTR,#TAB1 MOVC A,@A+DPTR MOV DPTR,#0DFFEH MOVX @DPTR,A LCALL DL DJNZ R3,LA1 POP DPH POP DPL RET
TAB1 : DB 3FH,06H,5BH,4FH,66H
DB
6DH,7DH,06H,7FH,67H
DB
77H,7CH,39H,5EH,79H,71H
計(jì)算△t 子程序
DT: CLR P1.7
MOV A,43H JZ S1
MOV R1,#00H AJMP END
S1: MOV A,42H
ANL A,#0EH JZ S2
MOV R1,#00H AJMP END
S2: MOV A,41H
JNZ S3
MOV R1,#01H AJMP END
S3: MOV A,41H
JZ S7
MOV B,#0AH MUL AB ADD A,40H MOV R1,#00H CLR C MOV R6,A
S4: ADD A,R6 INC R1 JNC S4 S5: CLR C
ADD A,R6 INC R1
CJNE A,#86H,S6
S6: JC S5
DEC R1 AJMP END
S7: SETB P1.7
MOV A,40H CJNE A,#09H,S8 MOVE R1,#08H AJMP END
S8: MOV A,40H
CJNE A,#08H,S9 MOV R1,#09H AJMP END
S9: MOV A,40H
CJNE A,#07H,S10 MOV R1,#0BH AJMP END
S10: MOV A,40H
CJNE A,#06H,S11 MOV R1,#0DH AJMP END
S11: MOV A,40H
CJNE A,#05H,S12 MOV R1,#0FH AJMP END
S12: MOV A,40H
CJNE A,#40H,S13 MOV R1,#13H AJMP END
S13: MOV A,40H
CJNE A,#03H,S14 MOV R1,#1AH AJMP END
S14: MOV A,40H
CJNE A,#02H,S15 MOV R1,#27H AJMP END
S15: MOV A,40H
CJNE A,#01H,0000H MOV R1,#30H
END: RET