Hi everyone
i have started pic hardware two weeks ago , before it i gone through much of it programming in assembly , since three days i m working on interfacing 14 pin lcd with ribbon connection , i m using sipmle program which is downloaded well into ic and progrm is burnt well ,with proper setting of configuration bits , when i interface the lcd it just giving some bullets which shows lcd is fine i m sending u my code and hope 4 ur reply since i m finding no way at there. thanx
LIST p=18F452 , F=INHX32, MM=OFF, N=0, ST=OFF , R=HEX
#Include P18F452.INC
CONFIG OSC=HS , OSCS=OFF
CONFIG WDT=OFF
CONFIG BORV=45, PWRT=ON, BOR=ON
CONFIG DEBUG=OFF, LVP=OFF, STVR=OFF
ORG 00h
LCD_DATA EQU PORTB
LCD_CTRL EQU PORTD
R2 EQU 0*2
R3 EQU 0*3
MYREG EQU 0*4
MTREG EQU 0*5
RS EQU RD0
RW EQU RD1
EN EQU RD2
CLRF TRISD
CLRF TRISB
BCF LCD_CTRL,EN
CALL LDELAY
MOVLW 0*38
CALL COMNWRT
CALL DELAY
MOVLW 0*0E
CALL COMNWRT
CALL DELAY
MOVLW 0*01
CALL COMNWRT
CALL DELAY
MOVLW 0*06
CALL COMNWRT
CALL DELAY
MOVLW 0*84
CALL COMNWRT
CALL DELAY
MOVLW A'P'
CALL DATAWRT
CALL DELAY
MOVLW A'A'
CALL DATAWRT
AGA BTG LCD_CTRL,0
BRA AGA
COMNWRT
MOVWF LCD_DATA
BCF LCD_CTRL,RS
BCF LCD_CTRL,RW
BCF LCD_CTRL,EN
CALL DELAY
BCF LCD_CTRL,EN
RETURN
DATAWRT
MOVWF LCD_DATA
BSF LCD_CTRL,RS
BSF LCD_CTRL,RW
BSF LCD_CTRL,EN
CALL SDELAY
BCF LCD_CTRL,EN
RETURN
SDELAY
MOVLW 0FF
MOVWF MYREG
ADAIN NOP
NOP
DECF MYREG,F
BNZ ADAIN
RETURN
LDELAY
MOVLW D'200'
MOVWF R2
AJAIN MOVLW D'250'
MOVWF R3
HERE NOP
NOP
DECF R3,F
BNZ HERE
DECF R2,F
BNZ AJAIN
RETURN
DELAY
MOVLW D'200'
MOVWF MTREG
AHAIN
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DECF MTREG,F
BNZ AHAIN
RETURN
END
i have started pic hardware two weeks ago , before it i gone through much of it programming in assembly , since three days i m working on interfacing 14 pin lcd with ribbon connection , i m using sipmle program which is downloaded well into ic and progrm is burnt well ,with proper setting of configuration bits , when i interface the lcd it just giving some bullets which shows lcd is fine i m sending u my code and hope 4 ur reply since i m finding no way at there. thanx
LIST p=18F452 , F=INHX32, MM=OFF, N=0, ST=OFF , R=HEX
#Include P18F452.INC
CONFIG OSC=HS , OSCS=OFF
CONFIG WDT=OFF
CONFIG BORV=45, PWRT=ON, BOR=ON
CONFIG DEBUG=OFF, LVP=OFF, STVR=OFF
ORG 00h
LCD_DATA EQU PORTB
LCD_CTRL EQU PORTD
R2 EQU 0*2
R3 EQU 0*3
MYREG EQU 0*4
MTREG EQU 0*5
RS EQU RD0
RW EQU RD1
EN EQU RD2
CLRF TRISD
CLRF TRISB
BCF LCD_CTRL,EN
CALL LDELAY
MOVLW 0*38
CALL COMNWRT
CALL DELAY
MOVLW 0*0E
CALL COMNWRT
CALL DELAY
MOVLW 0*01
CALL COMNWRT
CALL DELAY
MOVLW 0*06
CALL COMNWRT
CALL DELAY
MOVLW 0*84
CALL COMNWRT
CALL DELAY
MOVLW A'P'
CALL DATAWRT
CALL DELAY
MOVLW A'A'
CALL DATAWRT
AGA BTG LCD_CTRL,0
BRA AGA
COMNWRT
MOVWF LCD_DATA
BCF LCD_CTRL,RS
BCF LCD_CTRL,RW
BCF LCD_CTRL,EN
CALL DELAY
BCF LCD_CTRL,EN
RETURN
DATAWRT
MOVWF LCD_DATA
BSF LCD_CTRL,RS
BSF LCD_CTRL,RW
BSF LCD_CTRL,EN
CALL SDELAY
BCF LCD_CTRL,EN
RETURN
SDELAY
MOVLW 0FF
MOVWF MYREG
ADAIN NOP
NOP
DECF MYREG,F
BNZ ADAIN
RETURN
LDELAY
MOVLW D'200'
MOVWF R2
AJAIN MOVLW D'250'
MOVWF R3
HERE NOP
NOP
DECF R3,F
BNZ HERE
DECF R2,F
BNZ AJAIN
RETURN
DELAY
MOVLW D'200'
MOVWF MTREG
AHAIN
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DECF MTREG,F
BNZ AHAIN
RETURN
END