You are on page 1of 9

ORG 2000H

EN BIT P3.4
RS BIT P3.5
MAIN: MOV R1,#0
MOV R2,#0
MOV R3,#0
MOV R4,#0
MOV R0,#0
MOV 24H,#0
MOV 25H,#0
MOV 26H,#0
MOV 27H,#0
MOV 28H,#0
MOV 29H,#0
MOV 2AH,#0
CALL INI_LCD
CALL UART_INI
LOOP: CALL IN_CHART
CALL WRITE
CJNE A,#27,TIEP1
LJMP MAIN
TIEP1: CJNE A,#'+',TIEP2
MOV R0,A
MOV A,28H
CJNE A,#0,DAU1
MOV 28H,R0
LJMP THOAT1
DAU1: MOV A,29H
CJNE A,#0,DAU12
MOV 29H,R0
LJMP THOAT1
DAU12: MOV A,2AH
CJNE A,#0,THOAT1
MOV 2AH,R0
THOAT1: LJMP LOOP
TIEP2: CJNE A,#'-',TIEP3
MOV R0,A
MOV A,28H
CJNE A,#0,T2
MOV 28H,R0
LJMP THOAT2
T2: MOV A,29H
CJNE A,#0,T22
MOV 29H,R0
LJMP THOAT2
T22: MOV A,2AH
CJNE A,#0,THOAT2
MOV 2AH,R0
THOAT2: LJMP LOOP
TIEP3: CJNE A,#'*',TIEP4
MOV R0,A
MOV A,28H
CJNE A,#0,T3
MOV 28H,R0
LJMP THOAT3
T3: MOV A,29H
CJNE A,#0,T33
MOV 29H,R0
LJMP THOAT3
T33: MOV A,2AH
CJNE A,#0,THOAT3
MOV 2AH,R0
THOAT3: LJMP LOOP
TIEP4: CJNE A,#'/',TIEP5
MOV R0,A
MOV A,28H
CJNE A,#0,T4
MOV 28H,R0
LJMP THOAT4
T4: MOV A,29H
CJNE A,#0,T44
MOV 29H,R0
LJMP THOAT4
T44: MOV A,2AH
CJNE A,#0,THOAT4
MOV 2AH,R0
THOAT4: LJMP LOOP
TIEP5: CJNE A,#'=',SO
LJMP SOSANH
SO: CJNE R1,#0,CHUYEN1
MOV R1,A
CLR C
SUBB A,#30H
MOV 20H,A
LJMP LOOP
CHUYEN1: CJNE R2,#0,CHUYEN2
MOV R2,A
CLR C
SUBB A,#30H
MOV 21H,A
LJMP LOOP
CHUYEN2: CJNE R3,#0,CHUYEN3
MOV R3,A
CLR C
SUBB A,#30H
MOV 22H,A
LJMP LOOP
CHUYEN3: CJNE R4,#0,CHUYEN4
MOV R4,A
CLR C
SUBB A,#30H
MOV 23H,A
CHUYEN4: LJMP LOOP
SOSANH: MOV A,29H
CJNE A,#0,SOSANH2
MOV A,2AH
CJNE A,#0,SOSANH3
SJMP CHICO1DAU
SOSANH3: CALL THUCHIENPHEPNHAN
LJMP LOOP
CHICO1DAU: CLR C
MOV A,28H
CJNE A,#'/',CTN
CALL THUCHIENPHEPCHIA
LJMP LOOP
CTN: CJNE A,#'+',CCNVT
CALL THUCHIENPHEPCONG
LJMP LOOP
CCNVT: JC CCN
CLR C
MOV A,20H
CJNE A,22H,LONNHO
CLR C
MOV A,21H
CJNE A,23H,DVLONNHO
MOV A,#'0'
CALL WRITE
LJMP LOOP
DVLONNHO: JC DVNHO
CALL THUCHIENPHEPTRU
LJMP LOOP
DVNHO: MOV A,#'-'
CALL WRITE
MOV A,21H
MOV 21H,23H
MOV 23H,A
CALL THUCHIENPHEPTRU
LJMP LOOP
LONNHO: JC NHO
CALL THUCHIENPHEPTRU
LJMP LOOP
NHO: MOV A,#'-'
CALL WRITE
MOV A,20H
MOV 20H,22H
MOV 22H,A
MOV A,21H
MOV 21H,23H
MOV 23H,A
CALL THUCHIENPHEPTRU
LJMP LOOP
CCN: CALL THUCHIENPHEPNHAN
LJMP LOOP
SOSANH2: MOV A,2AH
CJNE A,#0,SOSANH3
MOV A,28H ;28H LA DAU PHU
CJNE A,#'-',CHINH
CLR C
MOV A,29H
CJNE A,#'/',CONGTRUNHAN
MOV A,#'-'
CALL WRITE
CALL THUCHIENPHEPCHIA
LJMP LOOP
CONGTRUNHAN: CJNE A,#'+',TRUVANHAN
CLR C
MOV A,20H
CJNE A,22H,CONGLONNHO
CLR C
MOV A,21H
CJNE A,23H,CONGLONNHO1
MOV A,#'0'
CALL WRITE
LJMP LOOP
CONGLONNHO1: JC TRUNHO1
MOV A,#'-'
CALL WRITE
CALL THUCHIENPHEPTRU
LJMP LOOP
TRUNHO1: MOV A,21H
MOV 21H,23H
MOV 23H,A
CALL THUCHIENPHEPTRU
LJMP LOOP
CONGLONNHO: JC TRUNHO
MOV A,#'-'
CALL WRITE
CALL THUCHIENPHEPTRU
LJMP LOOP
TRUNHO: MOV A,20H
MOV 20H,22H
MOV 22H,A
MOV A,21H
MOV 21H,23H
MOV 23H,A
CALL THUCHIENPHEPTRU
LJMP LOOP
TRUVANHAN: JC NHAN
MOV A,#'-'
CALL WRITE
CALL THUCHIENPHEPCONG
LJMP LOOP
NHAN: MOV A,#'-'
CALL WRITE
CALL THUCHIENPHEPNHAN
LJMP LOOP
CHINH: MOV A,#'-'
CALL WRITE
CALL THUCHIENPHEPNHAN
LJMP LOOP
INI_LCD: MOV A,#01H
CALL WRITE_COM
MOV A,#38H
CALL WRITE_COM
MOV A,#0CH
CALL WRITE_COM
MOV A,#06H
CALL WRITE_COM
RET
WRITE_COM: MOV DPTR,#8000H
SETB EN
CLR RS
MOVX @DPTR, A
CALL DELAY
CLR EN
RET
DELAY: MOV R7, #50
DEL1: MOV R6, #250
DJNZ R6, $
DJNZ R7, DEL1
RET
UART_INI: MOV SCON,#52H
MOV TMOD,#20H
MOV TH1,#-3
SETB TR1
RET
IN_CHART: JNB RI,$
CLR RI
MOV A,SBUF
RET
WRITE: MOV DPTR,#8000H
SETB EN
SETB RS
MOVX @DPTR, A
CALL DELAY
CLR EN
RET
THUCHIENPHEPCONG: MOV A,20H
MOV B,#10
MUL AB
ADD A,21H
MOV 20H,A
MOV A,22H
MOV B,#10
MUL AB
ADD A,23H
MOV 22H,A
MOV A,20H
ADD A,22H
MOV B,#100
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
MOV B,#10
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
ADD A,#30H
CALL WRITE
RET
THUCHIENPHEPTRU: MOV A,20H
MOV B,#10
MUL AB
ADD A,21H
MOV 20H,A
MOV A,22H
MOV B,#10
MUL AB
ADD A,23H
MOV 22H,A
CLR C
MOV A,20H
SUBB A,22H
MOV B,#100
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
MOV B,#10
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
ADD A,#30H
CALL WRITE
RET
THUCHIENPHEPNHAN: MOV A,23H
MOV B,A
MOV A,21H
MUL AB
MOV B,#10
DIV AB
MOV 24H,A ;CO NHO THU 1
MOV A,B
MOV 2BH,A ;GHI HANG DON VI
MOV A,23H
MOV B,A
MOV A,20H
MUL AB
ADD A,24H
MOV B,#10
DIV AB
MOV 25H,A ;CO NHO THU 2
MOV A,B
MOV 24H,A
MOV A,22H
MOV B,A
MOV A,21H
MUL AB
MOV B,#10
DIV AB
MOV 26H,A ; CO NHO THU 3
MOV A,B
ADD A,24H
MOV B,#10
DIV AB
MOV 24H,A
MOV A,B
MOV 2CH,A ;GHI HANG CHUC
MOV A,22H
MOV B,A
MOV A,20H
MUL AB
MOV B,#10
DIV AB
MOV 27H,A ;CO NHO THU 4
MOV A,B
ADD A,26H
MOV 26H,A
ADD A,25H
ADD A,24H
MOV B,#10
DIV AB
MOV 26H,A
MOV A,B
MOV 2DH,A ;GHI HANG TRAM
MOV A,27H
ADD A,26H
ADD A,#30H
CALL WRITE ;GHI HANG NGHIN
MOV A,2DH
ADD A,#30H
CALL WRITE
MOV A,2CH
ADD A,#30H
CALL WRITE
MOV A,2BH
ADD A,#30H
CALL WRITE
RET
THUCHIENPHEPCHIA: MOV 36H,#4
MOV A,20H
MOV B,#10
MUL AB
ADD A,21H
MOV 20H,A
MOV A,22H
MOV B,#10
MUL AB
ADD A,23H
MOV 22H,A
MOV A,22H
MOV B,A
MOV A,20H
DIV AB
MOV 30H,A ;SO NHO THU 1
MOV A,B
MOV 31H,A ; SO NHO THU 2
MOV A,30H
MOV B,#10
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
ADD A,#30H
CALL WRITE
MOV A,#'.'
CALL WRITE
MOV A,31H
TTCHIA: CLR C
MOV R5,#0
CJNE A,#25,TTC
MOV B,#10
MUL AB
MOV B,22H
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
DJNZ 36H,TTCHIA
LJMP THOATCHIA
NHOHON25: MOV 35H,A ;SO NHO THU 5
MOV B,#10
MUL AB
MOV 35H,A
MOV B,22H
DIV AB
ADD A,#30H
CALL WRITE
MOV A,B
DJNZ 36H,TTCHIA
LJMP THOATCHIA
TTC: JC NHOHON25
CLR C
SUBB A,#25
MOV 32H,A ;SO NHO THU 3
MOV B,#10
MUL AB
CHIA1: CLR C
SUBB A,22H
INC R5
CJNE A,22H,SSCHIA1
SJMP CHIA1
SSCHIA1: JC NHOHON22H
SJMP CHIA1
NHOHON22H: MOV 33H,A ;SO NHO THU 4
MOV A,#250
CHIA2: CLR C
SUBB A,22H
INC R5
CJNE A,22H,SSCHIA2
SJMP CHIA2
SSCHIA2: JC NHOHON22H2
SJMP CHIA2
NHOHON22H2: ADD A,33H
CLR C
CJNE A,22H,SSCHIA3
CHIA3: SUBB A,22H
INC R5
CLR C
CJNE A,22H,SSCHIA3
SSCHIA3: JC NHOHON22H3
SJMP CHIA3
NHOHON22H3: MOV 34H,A
MOV A,R5
ADD A,#30H
CALL WRITE
MOV A,34H
DJNZ 36H,TTCHIA
THOATCHIA: RET
END

You might also like