Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Problem with nokia 3310 lcd program.

Status
Not open for further replies.

Eraser

Member level 3
Joined
Nov 2, 2007
Messages
63
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Location
Braga,Portugal
Activity points
1,717
3310 +vop

i wrote a program to apear in position (0,0) a message in the lcd, the message shows up,but other pixels turns on too, all around the display and i dont know why.
All help is welcome.

this is the program:



#INCLUDE <P16F877A.INC>

__CONFIG _CP_OFF & _CPD_OFF & _DEBUG_OFF & _LVP_ON & _WRT_OFF & _BODEN_OFF & _PWRTE_OFF & _WDT_OFF & _XT_OSC


W EQU 0
F EQU 1

#DEFINE RESET PORTD,3
#DEFINE SCE PORTD,2
#DEFINE D_C PORTD,1
TEMP EQU 0x21

CBLOCK 0X20

ENDC

ORG 0x00
GOTO INICIO



INICIO

;INICIA_PORTOS
BCF STATUS,RP0
BCF STATUS,RP1
BSF STATUS,RP0
CLRF TRISD
CLRF TRISC


;INICIA_SPI
CLRF SSPSTAT
BCF STATUS,RP0
MOVLW 0x32
MOVWF SSPCON



;INICIA_LCD
BCF RESET
CALL DELAY
BSF RESET
BCF SCE
BCF D_C
MOVLW B'00100001' ;function setPD = 0 and V = 0, select extended instruction, set(H = 1 mode)
MOVWF SSPBUF
CALL DELAY
MOVLW B'10010000' ;set VOP, VOP is set to a+16 X b [V]
MOVWF SSPBUF
CALL DELAY
MOVLW B'00100000' ;function set ,PD = 0 and V = 0, selectnormal instruction set (H = 0 mode
MOVWF SSPBUF
CALL DELAY


MOVLW B'01000000' ;set y=0
MOVWF SSPBUF
CALL DELAY


MOVLW B'10000000' ;set x=0
MOVWF SSPBUF
CALL DELAY

MOVLW B'00001100' ; NORMAL MODE (D = 1 and E = 0)
MOVWF SSPBUF
CALL DELAY

BSF D_C ;data mode

MOVLW 0x7f ;write the message ("HUGO")
MOVWF SSPBUF
CALL DELAY

MOVLW 0x08
MOVWF SSPBUF
CALL DELAY
MOVLW 0x08
MOVWF SSPBUF
CALL DELAY

MOVLW 0x08
MOVWF SSPBUF
CALL DELAY

MOVLW 0x7f
MOVWF SSPBUF
CALL DELAY


MOVLW 0x00
MOVWF SSPBUF
CALL DELAY

MOVLW 0x3f
MOVWF SSPBUF
CALL DELAY

MOVLW 0x40
MOVWF SSPBUF
CALL DELAY
MOVLW 0x40
MOVWF SSPBUF
CALL DELAY

MOVLW 0x40
MOVWF SSPBUF
CALL DELAY

MOVLW 0x3f
MOVWF SSPBUF
CALL DELAY

MOVLW 0x00
MOVWF SSPBUF
CALL DELAY

MOVLW 0x3E
MOVWF SSPBUF
CALL DELAY

MOVLW 0x41
MOVWF SSPBUF
CALL DELAY
MOVLW 0x49
MOVWF SSPBUF
CALL DELAY

MOVLW 0x49
MOVWF SSPBUF
CALL DELAY

MOVLW 0x7A
MOVWF SSPBUF
CALL DELAY

MOVLW 0x00
MOVWF SSPBUF
CALL DELAY

MOVLW 0x3E
MOVWF SSPBUF
CALL DELAY

MOVLW 0x41
MOVWF SSPBUF
CALL DELAY
MOVLW 0x41
MOVWF SSPBUF
CALL DELAY

MOVLW 0x41
MOVWF SSPBUF
CALL DELAY

MOVLW 0x3E
MOVWF SSPBUF
CALL DELAY



MAIN GOTO MAIN



DELAY
DECFSZ TEMP,F
GOTO DELAY
RETURN

END
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top