正文

出租车计价器程序2005-09-26 08:59:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/niao0311/5344.html

分享到:

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 

阅读(6100) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册