Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
; This program is to test lcd display
; Demo Program Scrolling continues
;P1=data pin
;P2.0 connected to RS pin
;P2.1 connected to R/W pin
;P2.2 connected to E pin
;call delay1
MOV A,#38H ;init. LCD 2 lines,5x7 matrix
ACALL COMMAND ;issue command
MOV A,#0EH ;LCD on, cursor on
ACALL COMMAND ;issue command
MOV A,#01H ;clear LCD command
ACALL COMMAND ;issue command
MOV A,#06H ;shift cursor right
ACALL COMMAND ;issue command
MOV A,#0C0H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'8' ;display letter N
ACALL DATA_DISPLAY
MOV A,#'0' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'5' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'1' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'D' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'E' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'M' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'O' ;display letter O
ACALL DATA_DISPLAY
MOV A,#083H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'4' ;display letter N
ACALL DATA_DISPLAY
CALL DELAY
MOV A,#083H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'3' ;display letter N
ACALL DATA_DISPLAY
CALL DELAY
MOV A,#083H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'2' ;display letter N
ACALL DATA_DISPLAY
CALL DELAY
MOV A,#083H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'1' ;display letter N
ACALL DATA_DISPLAY
CALL DELAY
MOV A,#083H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'0' ;display letter N
ACALL DATA_DISPLAY
CALL DELAY
MOV A,#01H ;clear LCD command
ACALL COMMAND ;issue command
;----------------------------------------------------------------------------------------------
MOV A,#0C0H ;cursor: line 1, pos. 6
ACALL COMMAND ;command subroutine
MOV A,#'8' ;display letter N
ACALL DATA_DISPLAY
MOV A,#'0' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'5' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'1' ;display letter O
ACALL DATA_DISPLAY
MOV A,#' ' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'L' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'C' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'D' ;display letter O
ACALL DATA_DISPLAY
MOV A,#' ' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'D' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'I' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'S' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'P' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'L' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'A' ;display letter O
ACALL DATA_DISPLAY
MOV A,#'Y' ;display letter O
ACALL DATA_DISPLAY
HERE: MOV A,#18H ;cursor: line 1, pos. 6
ACALL COMMAND
CALL DELAY1
lJMP HERE
;STAY HERE
COMMAND: ACALL READY ;is LCD ready?
MOV P1,A ;issue command code
CLR P2.0 ;RS=0 for command
CLR P2.1 ;R/W=0 to write to LCD
SETB P2.2 ;E=1 for H-to-L pulse
CLR P2.2 ;E=0 ,latch in
RET
DATA_DISPLAY:
ACALL READY ;is LCD ready?
MOV P1,A ;issue data
SETB P2.0 ;RS=1 for data
CLR P2.1 ;R/W=0 to write to LCD
SETB P2.2 ;E=1 for H-to-L pulse
CLR P2.2 ;E=0, latch in
RET
READY:
SETB P1.7 ;make P1.7 input port
CLR P2.0 ;RS=0 access command reg
SETB P2.1 ;R/W=1 read command reg
BACK:CLR P2.2 ;E=1 for H-to-L pulse
SETB P2.2 ;E=0 H-to-L pulse
JB P1.7,BACK ;stay until busy flag=0
RET
delay:
mov r7, #0fh
up4: mov r6, #060h
up3: mov r5, #00h
djnz r5, $
djnz r6, up3
djnz r7, up4
ret
;-------------------delay program------------------------
DELAY1:
MOV TMOD,#010H
MOV R3,#04H ;95
TES: MOV TL1,#00H ;00
MOV TH1,#00H ;00
SETB TR1
T : JNB TF1,T
CLR TR1
CLR TF1
DJNZ R3,TES
RET
;---------------------end-------------------------------------
END
[/img]\[find datasheet of lcd on net and connect as per it,
all the best\]