Escrever no LCD checando o busy flag

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor Adauto sampaio » 14 Mai 2007 10:06

Bom dia Renato. Certifique-se de que escreveu o caractere no endereço inicial 0x40 da CGRAM do LCD. Depois, para chamá-lo, é só apontar para onde quer que ele apareça, e chamar pelo endereço onde está gravado na CGRAM, no caso 0x00. Vou dar um exemplo:

CARACTERE_1

MOVLW 0X40 ;APONTA PARA O PRIMEIRO ENDEREÇO DA CGRAM
CALL SEND_CMD
MOVLW 0X1E
CALL SEND_CHAR ;ENVIA OS BYTES NA SEQUÊNCIA, PARA FORMAR
MOVLW 0X1E ;O CARACTERE
CALL SEND_CHAR
MOVLW 0X1E
CALL SEND_CHAR
MOVLW 0X1E
CALL SEND_CHAR
MOVLW 0X1E
CALL SEND_CHAR
MOVLW 0X1E
CALL SEND_CHAR
MOVLW 0X1E
CALL SEND_CHAR
MOVLW 0X00
CALL SEND_CHAR

RETURN

Depois, no corpo do programa, logo após configurar as entradas e saídas do pic, vc chama a rotina CARACTERE_1. Quando precisar chamar pelo caractere, é só escrever o endereço onde ele foi gravado.

MOVLW 0XC0
CALL SEND_CMD
MOVLW 0X00
CALL SEND_CHAR
MOVLW 0X00
CALL SEND_CHAR

Detalhe - as rotinas SEND_CMD e SEND_CHAR são para o envio de comandos e dados respectivamente. Como disse antes, as rotinas que uso foram extraídas do site que passei antes.
Qualquer duvida, posta aí.
Abraços!!!
É tudo uma questão de sorte; pergunte a qualquer perdedor
Adauto sampaio
Byte
 
Mensagens: 123
Registrado em: 07 Jan 2007 16:02

Mensagempor Renato_mcl » 14 Mai 2007 20:44

Olá Adauto,

Tudo entendido.

Mas eu preciso de uma rotina que utilize só o portb (4bits) e o site que você passou utiliza o porta para transferir dados para o LCD.
Sua rotina vai ser útil em outra aplicação.

Grato

Renato
Renato_mcl
Byte
 
Mensagens: 204
Registrado em: 04 Dez 2006 20:34

Mensagempor Renato_mcl » 15 Mai 2007 13:16

Olá pessoal,

Finalmente consegui resolver, obrigado pela atenção.


Renato
Renato_mcl
Byte
 
Mensagens: 204
Registrado em: 04 Dez 2006 20:34

Mensagempor zielpunkt » 15 Mai 2007 13:36

...Conta pra nóis, aeh, mano! :)
"Talento é mais barato que sal. O que separa a pessoa talentosa da bem-sucedida é muito trabalho duro." [ Stephen King ]
zielpunkt
Byte
 
Mensagens: 376
Registrado em: 12 Out 2006 11:36
Localização: Sao Paulo - SP

Mensagempor Renato_mcl » 15 Mai 2007 18:06

Descuple não ter postado antes, eu estava enrolado tentando formatar um microcomputador.

Antes das duas instruções 0x28 inseri mais uma 0x28 para ser enviada só uma vez (4bits), então ficou desta maneira.

MOVLW 0X28
MOVWF PORTB
BCF PORTB,E
CALL CHECABF

Veja neste link que esta instrução faz parte da inicialização do LCD:

http://patna.sancharnet.in/guria741/pic2lcd/LCD4Bit.asm



Renato
Renato_mcl
Byte
 
Mensagens: 204
Registrado em: 04 Dez 2006 20:34

Mensagempor Renie » 17 Mai 2007 01:32

Olá Renato,

Desculpe-me lhe chamar a atenção, mas, está no meu velho tutorial
que nem eu mesmo lembro de tudo, mas, está lá!
[]'s
Renie
-------------------------------------------------------------------------------------------------------------
Meu velho site com eletrônica praticamente parado http://www.reniemarquet.com
Nosso Blog http://artemadeiraevida.blogspot.com.br
Renie
Word
 
Mensagens: 732
Registrado em: 11 Out 2006 22:35
Localização: RJ - Niterói - Brasil

Anterior

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

cron

x