MY assembly language
ORG 0000H
JMP MAIN
ORG 0100H
MAIN: CLR P2.5 ; send command
CLR P2.6 ; write
MOV A,#38H :5*8 font
CALL STROBE
MOV A,#0CH :cursor off
CALL STROBE
MOV A,#06H ;display pattern
CALL STROBE
MOV A,#01H ;clear display
CALL STROBE
MOV A,#02H ;return home
CALL STROBE
SETB P2.5 ;rs send data
MOV SCON,#50H ;set serial mode
MOV TMOD,#20H ;set timer1 to mode 2
MOV TCON,#00H ; set baud rate to 9600bps
MOV TH1,#FDH
SETB TR1
MOV A,#41H ;mov 41h to a
TX: MOV SBUF,A ;put character into sbuf
WAIT: JNB TI,WAIT ;check tx ready?
CLR TI ;yes,clear flag
RX: JNB RI,RX ;any character rx?
CLR RI ;yes,clear flag
MOV A,SBUF ;read character into a
CALL STROBE ;display in LCD
JMP TX ;endless loop
STROBE: SETB P2.7 ;Set e to high
MOV P0,A ;send to port 0
CLR P2.7
RET
END