Olá pessoal, recentemente fiz a aquisição de 2 telinhas de LCD.
A primeira foi um shield, de 3,95', conectei, coloquei uma biblioteca qualquer da adafruit e funcionou.
A segunda foi adquirida AQUI. é o modelo de 3,5 pol. Este modelo não é um shield para o Uno, e este ponto foi intencional, pois os shield's, para mim, são bem desagradáveis, pois me obriga a "acoplar" o material no controlador. Segue a foto:
Então, vieram os testes com as bibliotecas, dentre elas, inseri:
- Adafruit_BusIO
- Adafruit_GFX_
- Adafruit_HX8357_(recomendação)
- Adafruit_STMPE610
- Adafruit_TFTLCD
- ILI9488-master
- Adafruit_ILI9341 (desespero)
Também utilizei ESTA REFERÊNCIA, onde tive acesso a mais demonstrações e + 3 bibliotecas:
- LCDWIKI_GUI
- LCDWIKI_SPI (que é o meu foco)
- LCDWIKI_TOUCH
Entretanto, o resultado é sempre o mesmo (com excessão do Adafruit_ILI9341),
1- termina de carregar o código
2- surge 2 linhas verticais.
3- em um código ou outro, fica subindo novas faixas de cores (como o vídeo em anexo).
obs- o códigos de exemplo, foram para apresentar texto e/ou figuras.
Alguém saberia me indicar uma direção?
Tags:
(para quem não tiver interesse em abrir o vídeo)
É assim que a tela costuma ficar (teve 1 biblioteca que ela apenas mostrou as 2 linhas brancas no centro)
obs- esses traços na diagonal,o circulo e as letras e números, são do plastico de proteção da tela (as películas que sempre vem, quando é utilizado o serviço de postagem)
Dificil. Muita coisa pode provocar isso. O jeito é verificar uma por uma.
- GND ligado ok?
- Fios ligados ok? Um por um, testado com multimetro. As vezes um jumper com defeito por ex estraga tudo.
- Alimentação ok ? É 5V e está com 5.0V? ou 4,3.. por fonte ruim. Portas USB com fios padrão china são bem ruins na questão de alimentação.
- Os pinos usados na biblioteca são os mesmos ligados ? Conferido isso ?
- Tem pinos não ligados que tem função ? Como o CS ? Chip select...
Eu poria pra rodar e mediria cada pino com o GND no LCD, usando osciloscópio. Na falta o multimetro no modo frequencimetro (pra ver se vem pulsos mesmo), na falta o multimetro em DC (não pode ficar nem 0 nem 1, tem que ficar alternando), na falta um led+resistor, na falta, outro arduino com um programa que diga o que le em um pino, fique subindo 0 e 1s, aih vc veria eles subindo só 0 ou só 1 ou alternando.
Estatisticamente diria que é
- ligação errada (o que mais acontece).
- programação faltando detalhe (como definir um pino)
- defeito (raro, mas acontece).
- GND ligado ok?
OK.
- Fios ligados ok? Um por um, testado com multimetro. As vezes um jumper com defeito por ex estraga tudo.
Todos testados
- Alimentação ok ? É 5V e está com 5.0V? ou 4,3.. por fonte ruim. Portas USB com fios padrão china são bem ruins na questão de alimentação.
em cada ponta está registrando 4,7+-
- Os pinos usados na biblioteca são os mesmos ligados ? Conferido isso ?
Afirmativo
- Tem pinos não ligados que tem função ? Como o CS ? Chip select...
Negativo
Eu poria pra rodar e mediria cada pino com o GND no LCD, usando osciloscópio. Na falta o multimetro no modo frequencimetro (pra ver se vem pulsos mesmo), na falta o multimetro em DC (não pode ficar nem 0 nem 1, tem que ficar alternando), na falta um led+resistor, na falta, outro arduino com um programa que diga o que le em um pino, fique subindo 0 e 1s, aih vc veria eles subindo só 0 ou só 1 ou alternando.
Não cheguei a realizar este procedimento. Vi que a placa era dedicada ao stm32, e o RuiViana me alertou sobre o uso de 3,3v, ao invés de sinais de 5v. Então parei tudo pois fiquei em choque, com receio de ter queimado o equipamento. (ninguém merece +3 meses de espera pelo aliexpress)
Preocupado, resolvi antecipar o uso do ESP32 (que estava adiando pois ocupa 2 protoboard), pois é o equipamento mais fácil que tenho, que trabalha com 3,3v (tenho o esp8266 também, mas ainda falta realizar a solda)
Com relação as probabilidades, as "ligações erradas" é a mais provável, tendo em vista que tive que refazer o processo umas 6 vezes no esp32 (perdi o cabaço hoje) só para ligar jumpers nele, e que também não era o apropriado para o arduino.
Não achei fácil. A solução para o uno (não testada por mim, mas vi em fóruns), foi utilizar um Shift Level (ou algo assim).
Suspendi este processo e passei para o esp32.
Quem estiver com o mesmo problema, recomendo a Lib: TFT_eSPI, do BODMER.
Atenção: É necessário editar o "User_Setup.h". Existem vários comentários para auxiliar.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por