ORG 00H
/***************/
TABDIL EQU P3.0 /*WRITE*/
INT EQU P3.1 /*PAYANE TABDIL*/
READ EQU P3.2 /*READ*/
RS EQU P3.4
RW EQU P3.5
E EQU P3.6
/***************/
MOV P2,#38H
CALL COM
CALL DELAY
MOV P2,#38H
CALL COM
CALL DELAY
MOV P2,#38H
CALL COM
CALL DELAY
/***************/
MOV P2,#1H
CALL COM /*COMAND*/
CALL DELAY
MOV P2,#0CH
CALL COM
CALL DELAY
MOV P2,#83H
CALL COM
CALL DELAY
MOV A,#'T'
CALL DAT /*DATA*/
CALL READY /*IS LCD READY?*/
MOV P2,#84H
CALL COM
CALL DELAY
MOV A,#'E'
CALL DAT
CALL READY
MOV P2,#85H
CALL COM
CALL DELAY
MOV A,#'M'
CALL DAT
CALL READY
MOV P2,#86H
CALL COM
CALL DELAY
MOV A,#'P'
CALL DAT
CALL READY
MOV P2,#87H
CALL COM
CALL DELAY
MOV A,#' '
CALL DAT
CALL READY
MOV P2,#88H
CALL COM
CALL DELAY
MOV A,#'I'
CALL DAT
CALL READY
MOV P2,#89H
CALL COM
CALL DELAY
MOV A,#'S'
CALL DAT
CALL READY
MOV P2,#8AH
CALL COM
CALL DELAY
MOV A,#':'
CALL DAT
CALL READY
/***************/
MOV P1,#0FFH /*MAKE P1 AN INPUT PORT*/
BACK:
CLR TABDIL /* SHOROE TABDIL ADC*/
SETB TABDIL
HERE: JB INT,HERE /*CHEKING THE P3.1*/
CLR READ
CALL CONVERSION /*TABDILE BINERY BE DECIMAL VA SEPAS ASC*/
SETB READ
SJMP BACK
/***************/
CONVERSION:
/*TAGHSIM BAR 10 */
MOV A,P1
MOV B,#10D
DIV AB
MOV R0,B /* YEKAN DARONE R0*/
MOV B,#10
DIV AB
MOV R1,B /*DAHGAN DARONE R1*/
MOV R2,A /*SADGAN DARONE R2*/
/******ASC******/
MOV A,#30H
ORL A,R2 /* OR 30H WITH R2 FOR CREATING ASC AND SAVE
IN ACCOMULATOR */
MOV P2,#8BH /*MAKANIKE ROYE LCD MIKHAHIM SADGAN NESHON BEDIM*/
CALL COM
CALL DELAY
CALL DAT
CALL READY
MOV A,#30H
ORL A,R1
MOV P2,#8CH /*MAKANIKE ROYE LCD MIKHAHIM DAHGAN NESHON BEDIM*/
CALL COM
CALL DELAY
CALL DAT
CALL READY
MOV A,#30H
ORL A,R0
MOV P2,#8DH /*MAKANIKE ROYE LCD MIKHAHIM YEKAN NESHON BEDIM*/
CALL COM
CALL DELAY
CALL DAT
CALL READY
RET
/***************/
COM:
CLR RS
CLR RW
SETB E
CLR E
RET
/***************/
DAT:
MOV P2,A
SETB RS
CLR RW
SETB E
CLR E
RET
/***************/
READY:
CLR RS
SETB RW
BOB:
SETB E
CLR E
JB P2.7,BOB
RET
/***************/
DELAY:
MOV R3,#50
DOBARE: MOV R4,#255
SEBARE: DJNZ R4,SEBARE
DJNZ R3,DOBARE
RET
/***************/
END