Como escrever segunda linha no LCD 16x2?

Software e Hardware para linha x51

Moderadores: 51, guest2003, Renie, gpenga

Como escrever segunda linha no LCD 16x2?

Mensagempor fmatheus » 12 Mai 2007 22:11

Bom, aqui vai mais uma dificuldade que estou enfrentando e gostaria de pedir a ajuda dos colegas novamente.

Estou tentando esvrever a segunda linha no lCD 16 x 2 mas só aparece a primeira linha.

Estou usando o KIT do AT89S8252 onde o LCD fica ligado ao port P1.
No proteus funciona direitinho com o port P0 (I/O mapeado) mas quando utilizo o port P1 só escreve na primeira linha. Por que será que não funciona?

Vou colocar as partes principais do programa:

LCALL LIMPA
MOV DPTR,#MSG1
LCALL ESCREVE

LCALL LIMPA1
MOV DPTR,#MSG2
LCALL ESCREVE

ESCREVE:
MOV A,#0
MOVC A,@A+DPTR
CJNE A,#'&',CONTINUA
RET
CONTINUA:
LCALL GRAVA
INC DPTR
JMP ESCREVE

GRAVA:

CLR EN
MOV P1,A
LCALL DELAY
SETB EN
RET
LIMPA:
CLR RS
MOV A,#80H
LCALL GRAVA
SETB RS
RET

LIMPA1:
CLR RS
MOV A,#10H
LCALL GRAVA
MOV A,#0C0H
LCALL GRAVA
SETB RS
RET

ORG MSG1
DB ' 1ª LINHA &'
ORG MSG2
DB ' 2º LINHA &'
fmatheus
Bit
 
Mensagens: 39
Registrado em: 02 Mar 2007 14:53

Re: Como escrever segunda linha no LCD 16x2?

Mensagempor R.B.Sanchez » 13 Mai 2007 19:07

Boa noite.

Para que seja escrito a 2ª mensagem você deve endereçar a segunda linha caso o contrário as mensagens serão escritas no íltimo comando válido.

MOV P1,#0C0H ;identifica 1 coluna da segunda linha

CLR RS ;afirma instrução
SETB EN ;transição (clock) para habilitar LCD
CLR EN ;

Espero que isto ajude, caso contrário estarei a disposição.

Atenciosamente,
Renato.
R.B.Sanchez
Byte
 
Mensagens: 103
Registrado em: 13 Out 2006 19:14
Localização: Guarulhos / SP

Mensagempor fmatheus » 13 Mai 2007 22:36

R.B.Sanchez,

Funcionou!!!
Muitíssimo obrigado

Segui a sequência que vc indicou e deu certo.
As linhas em negrito estavam invertidas:

GRAVA:

SETB EN
MOV P1,A
LCALL DELAY
CLR EN
RET

O estranho é que mesmo com estas linhas invertidas o LCD inicializava e aparecia somente a primeira linha.

Agora tá funcionando direitinho.

Valeu mesmo e um abraço.
fmatheus
Bit
 
Mensagens: 39
Registrado em: 02 Mar 2007 14:53


Voltar para 8051

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x