ORG 0000H Z8279 EQU 0FF82H D8279 EQU 0FF80H INII8279: MOV DPTR,#Z8279 MOV A, #0D1H MOVX @DPTR,AWAIT: MOVX A, @DPTR JB ACC.7, WAIT MOV A,#00H MOVX @DPTR,A MOV A,#2AH MOVX @DPTR,A 8279初始化; MOV A,#00H PUSH PSW PUSH DPH PUSH DPL PUSH ACCKK: MOV DPTR,#Z8279 MOVX A,@DPTR ANL A,#07H JNZ READ MOV A,#00H SJMP KK 是否有键按下; READ: MOV A,#40H MOVX @DPTR,A MOV DPTR,#D8279 MOVX A,@DPTR CJNE A,#0EH,KK 是否是开车键0E POP ACC POP DPL POP DPH POP PSW MOV R4,#00HAG: MOV A,#00H 再次启动 TT: MOV R6,#8 DL3: MOV R7,#200DL2: MOV R5,#250DL1: NOP DJNZ R5,DL1 DJNZ R7,DL2 DJNZ R6,DL3 产生一个延时 ADD A,#01H 路程自动加一 PUSH ACC MOV DPTR,#Z8279 MOVX A,@DPTR ANL A,#07H JNZ READ1 SJMP GO1READ1:MOV A,#40H MOVX @DPTR,A MOV DPTR,#D8279 MOVX A,@DPTR CJNE A,#0FH,GO1 是否是停车键0F LJMP OVER GO1: POP ACCPUSH ACCPUSH ACC MOV B,#100 DIV AB MOV 76H,A MOV A,#10 XCH A,B DIV AB 数值转换为非压缩BCD码 MOV 74H,B MOV 75H,A MOV 77H,#00HPOP ACC CJNE A,#2,LLLL: JC L2 SUBB A,#2 MOV B,#2 MUL AB ADD A,#5 MOV R3,A AJMP L4L2: MOV A,#5 有路程算出票价 L4: MOV B,#100 DIV AB MOV 72H,A MOV A,#10 XCH A,B 数值转换为非压缩BCD码 DIV AB MOV 70H,B MOV 71H,A MOV 73H,#0 DISLED: PUSH DPH 显示 PUSH DPL MOV DPTR, #Z8279 MOV A,#90H MOVX @DPTR,A MOV R0,#70H MOV R7,#08H MOV DPTR,#D8279DL0: MOV A,@R0 ADD A,#0CH MOVC A,@A+PC MOVX @DPTR,A INC R0 DJNZ R7,DL0 POP DPL POP DPH POP ACC AJMP TT LEDSEG:DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71HOVER: 如果停车把路程和票价以压 缩的BCD码保存起来 MOV R1,#70H MOV R0,#60H BC: MOV A,R0 MOV R3,#4 ADD A,R4 MOV R0,A TOG1: MOV B,@R1 ANL B,#0FH INC R1 MOV A,@R1 ANL A,#0FH SWAP A ORL A,B MOV @R0,A INC R1 INC R0 DJNZ R3,TOG1 INC R4 INC R4 INC R4 INC R4 WAIT1: MOV DPTR,#Z8279 MOVX A,@DPTR ANL A,#07H JNZ READ2 SJMP GO2READ2: MOV A,#40H MOVX @DPTR,A MOV DPTR,#D8279 MOVX A,@DPTR CJNE A,#0EH,GO2 等待再次拉客 LJMP AG 等待是否回放GO2: CJNE A,#07H,WAIT1 AJMP HFF HFF: MOV R0,#60HHF1: MOV R4,#4 MOV R1,#70HHF: MOV A,R0 MOV A @R0 MOV B,@R0 ANL A,#0FH MOV @R1,A ANL B,#0F0H MOV A,B SWAP A INC R1 MOV @R1 A INC R0 INC R1 DJNZ R4,HF MOV A,R0 DISLED1: PUSH ACC PUSH DPH PUSH DPL MOV DPTR,#Z8279 MOV A,#90H MOVX @DPTR,A MOV R0,#70H MOV R7,#08H MOV DPTR,#D8279DL: MOV A,@R0 ADD A,#0BH MOVC A,@A+PC MOVX @DPTR,A INC R0 DJNZ R7,DL POP DPL POP DPL LJMP DDLEDSEG1:DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H DD: MOV DPTR,#Z8279 MOVX A,@DPTR ANL A,#07H JNZ READ4 SJMP DDREAD4: MOV A,#40H MOVX @DPTR,A MOV DPTR,#D8279 MOVX A,@DPTR CJNE A,#07H,AGG POP ACC MOV R0,A AJMP HF1 AGG: LJMP AG 等待再次拉客 END

评论