Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
07/12/06 07:55
Read: times


 
#120063 - 2x16 yj162a LCD glitch
here's the code that i'm using....
the problem i'm having is the display just won't show up on the 2nd line..the display works fine on the 1st line, but won't budge to line 2.

HELP!!!

DB0 EQU P1.0
DB1 EQU P1.1
DB2 EQU P1.2
DB3 EQU P1.3
DB4 EQU P1.4
DB5 EQU P1.5
DB6 EQU P1.6
DB7 EQU P1.7
EN EQU P3.5
RS EQU P3.3
RW EQU P3.4
SR EQU P3.2;connected to s_/r of 74HC245
DATA EQU P1

org 0000h
LCALL INIT_LCD
LCALL CLEAR_LCD
MOV A,#'H'
LCALL WRITE_TEXT
MOV A,#'E'
LCALL WRITE_TEXT
MOV A,#'L'
LCALL WRITE_TEXT
MOV A,#'L'
LCALL WRITE_TEXT
MOV A,#'O'
LCALL WRITE_TEXT
CLR RS
CLR SR
MOV DATA,#0C0h;2nd line,1st character
SETB EN
CLR EN
LCALL WAIT_LCD
MOV A,#'W'
LCALL WRITE_TEXT
MOV A,#'O'
LCALL WRITE_TEXT
MOV A,#'R'
LCALL WRITE_TEXT
MOV A,#'L'
LCALL WRITE_TEXT
MOV A,#'D'
LCALL WRITE_TEXT

here:
sjmp here

WAIT_LCD:

mov R0,#49;10 ms delay lower byte
mov R1,#79;10 ms delay upper byte
Loop:
djnz R0,Loop
djnz R1,Loop
CLR EN
SETB SR;enable receive
CLR RS ;It's a read command
SETB RW ;It's a read command part.
MOV DATA,#0FFh ;Set all pins to FF initially to make it i/p port
SETB EN ;Clock out command to LCD
MOV A,DATA ;Read the return value
CLR EN ;Finish the command
JB ACC.7,WAIT_LCD ;If bit 7 high, LCD still busy
CLR RW ;Turn off RW for future commands

RET

INIT_LCD:

CLR RS
CLR SR;enable transmit
MOV DATA,#38h;enable 8-bit,2-line mode
SETB EN
CLR EN
LCALL WAIT_LCD;wait for busy flag clearance
CLR RS
CLR SR
MOV DATA,#0Fh;enable display,blinking cursor
SETB EN
CLR EN
LCALL WAIT_LCD
CLR RS
CLR SR
MOV DATA,#06h;enable incrementing cursor
SETB EN
CLR EN
LCALL WAIT_LCD
RET

CLEAR_LCD:
CLR RS
CLR SR
MOV DATA,#01h;clear display
SETB EN
CLR EN
LCALL WAIT_LCD
RET

WRITE_TEXT:

SETB RS
CLR SR
MOV DATA,A
SETB EN
CLR EN
LCALL WAIT_LCD
RET

List of 4 messages in thread
TopicAuthorDate
2x16 yj162a LCD glitch            01/01/70 00:00      
   are you aware            01/01/70 00:00      
   Some thoughts            01/01/70 00:00      
   Problem Solved            01/01/70 00:00      

Back to Subject List