Boa noite, senhores!
Por acaso poderiam me ajudar com a documentação de um Display lcd 24x4?
era de um aparelho telefônico que quebrou.
Estou tentando utilizar com 4 bits e deu quase certo; os números até aparecem, porem não estão na posição em que foi determinada.
Pelo que entendi, o erro é devido à diferença de controlador, posto que os mais comuns trabalham com até 80 caracteres.
Se por acaso alguém já trabalhou com display desta dimensão e puder me ajudar com a documentação, ficarei muito agradecido.
Seguem as fotos do display em anexo.
Tags:
Olá, Paulo Cézar!
Não consegui achar datasheet deste display. Provavelmente é feito sob encomenda para o fabricante do telefone de onde foi tirado.
Mas a boa notícia é que está mostrando os caracteres. Então pode ser que seja só uma questão de ajuste.
Provavelmente o problema é o mapeamento do display na RAM do controlador. A maioria dos displays de 4 linhas usam o seguinte mapeamento:
1ª Linha começa no endereço da RAM 0x00
2ª Linha começa no endereço da RAM 0x40
3ª Linha começa no endereço da RAM 0x14
4ª Linha começa no endereço da RAM 0x54
Este mapeamento é adequado para displays de até 64 caracteres por linha.
Este display que foi tirado do telefone deve ter um mapeamento difierente, por isso os caracteres estão aparecendo nas posições erradas.
Se você disser qual a biblioteca está utilizando e de onde a baixou, e também mandar umas fotos dos textos mostrados e a informação de onde deveriam estar, talvez se possa fazer um "patch" na biblioteca para fazer funcionar com este teu display.
Saudações.
D.T. Ribeiro.
boa tarde,
Estou utilisando com um pic 18f4520 e programando com o mikroc encontrei o arquivo da biblioteca mas nao consegui abrir __Lib_Lcd.mcl e__Lib_LcdConsts.mcl
Olá Paulo Cézar!
Os arquivos __Lib_Lcd.mcl e __Lib_LcdConsts.mcl devem ser códigos compilados das bibliotecas.
Você não vai conseguir mostrá-los em uma forma inteligível para um ser humano.
Provavelmente o .mcl queira dizer mikroc library.
Na documentação destas bibliotecas deve ter a informação necessária.
Se você conseguir a documentação destas bibliotecas, talvez facilite.
Uma outra opção seria alterar o teu código para ficar compatível com as bibliotecas e o display.
Por isso te pedi as fotos do que estava acontecendo no display e a informação do que deveria acontecer.
Neste caso, precisaria do teu código também para ver quais funções da biblioteca estás usando.
D.T. Ribeiro.
Bom dia PCMGR, (se não gosta que te chame pelas iniciais, avise),
Voce diz que : "os números até aparecem, porem não estão na posição em que foi determinada. ".
mostre uma imagem de como eles aparecem.
RV mineirin
Bom dia,
Tem certeza que o display possui 24 caracteres x 4 linhas?
O comum é o 20 x4 :
http://wiki.sunfounder.cc/index.php?title=I2C_LCD2004
https://www.sparkfun.com/datasheets/LCD/GDM2004D.pdf
http://portaldoarduino.com.br/como-utilizar-o-modulo-i2c-com-displa...
https://wiki.dfrobot.com/I2C_TWI_LCD2004_Module__Arduino_Gadgeteer_...
Talvez a solução esteja aqui:
https://forum.arduino.cc/t/solved-24x4-lcd-displays-text-on-wrong-l...
Olá Gustavo.
O que está descrito no link que provestes é exatamente a minha suspeita ( veja minha primeira resposta ).
Entretanto o O.P., infelizmente, não está usando ARDUINO e, portanto, não pode se beneficiar das 'wrapper functions' que as bibliotecas mais novas do ARDUINO proveem.
Por isso pedi que postasse as imagens e dados para que possa indicar 'wrapper functions' que possam ser utilizadas neste caso.
D.T. Ribeiro.
Desculpem a demora para responder, deu problema no flat do display tive de comprar outro
segue em anexo a foto da resposta do display e o comando que foi dado
esperava que no dilsplay aparecece oo seguinte:
1bcdefghijklmnopqrstuvwx
2BCDEFGHIJKLMNPQRSTUVWX
3bcdefghijklmnopqrstuvwx
4BCDEFGHIJKLMNPQRSTUVWX
olá novamente, Paulo.
Há algum tempo atrás, um amigo aqui no LDG queria a todo custo usar um LCD semelhante ao seu, mas o dele era maior, de 40x4 (40 colunas por 4 linhas).
Bem, o problema é que nenhuma Biblioteca disponível na Internet, funcionava com o Display dele, pois os dados eram exibidos nas posições erradas do Display. Na época, pesquisamos, e de fato várias pessoas ao redor do mundo já tinham tentado usar aquele Display sem sucesso, justamente devido às Bibliotecas não serem compatíveis.
Então o único jeito foi eu "fazer" uma Biblioteca do zero, mas que fosse também compatível com todos os Displays mais comuns (16x2, 20x4, etc), e com as mesmas funções existentes nas Bibliotecas padrões do Arduino via interface I2C (para economizar pinos) de forma que qualquer código escrito anteriormente, funcionasse com a nova Biblioteca (e com ótima performance).
Deu um certo trabalho, mas o resultado foi excelente, e o Display funcionou perfeitamente, inclusive em diversas plataformas Arduino (testei no UNO, Mega, ESP32, ESP8266, STM32, Due).
Aqui está uma foto que ele tirou do Display, já em funcionamento:
Devido à sua descrição do problema, percebo que a questão foi bem similar à sua.
Infelizmente, nos próximos dias estarei um tanto sem tempo, e não poderei olhar isso com mais atenção e detalhes.
Mas acredito que seja perfeitamente possível obter os mesmos resultados que eu obtive com o Display 40x4.
Abrçs,
Elcids
Olá, Paulo Cezar!
Pela foto do display e o programa que você enviou, parece que a biblioteca limita em 20 colunas cada linha do display.
Isto é uma limitação que não pode ser superada por "wrapper functions".
Mesmo assim sugiro, a guisa de curiosidade, que você rode o programa que está no anexo, após incluir os headers necessários, e poste uma imagem do que apareceu no display, para que se possa ter um melhor diagnóstico.
Se conseguirmos usar as primeiras 20 colunas de cada linha, acho que já teremos lucro.
E, cá entre nós, esta biblioteca da Mikroe não está só mal escrita, como também mal comentada!
Aliás, este parece ser um padrão. As excessões ficam por conta da Adafruit que, geralmente, tem bibliotecas bem escritas e bem comentadas.
Não é à toa que o Elcids precisou escrever uma biblioteca a partir do zero.
Abração.
D. T. Ribeiro
Olá pessoal, bom dia
"Tô" de olho aqui, se precisar, ajudo......
Mas este tal de MikroC, eu abomino........
Gosto de escrever códigos para PIC em HITECH-C (que foi descontinuado e substituído pelo
MPLAB® XC8 PRO), e as vezes em CC.
RV mineirin
Olá RV!
"Mas este tal de MikroC, eu abomino........"
E eu, nunca usei e não gostei. :-)
Claro que a melhor forma de se usar PIC é com o MPLAB® XC8 PRO, mas os problemas aqui, são dois:
1. A biblioteca é mal escrita e mal documentada. E também não dá acesso ao código fonte, para que se possa tentar melhorar/corrigir.
2. O display tem um esquema de mapeamento na RAM que é difícil de entender. Se conseguirmos levantar este esquema, podemos usar "wrapper functions" para redirecionar os dados para o display.
Mas devo confessar que tá difícil.
Abração!
D. T. Ribeiro
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por