Configurando o Display LCD 16x2 no Arduino

Eletrônica



Como funciona o display LCD 16x2?


Este display LCD possui 16 colunas e 2 linhas, luz de fundo azul e letras brancas.
Para a conexão existem 16 pinos , dos quais vamos usar 12 para uma conexão básica, já incluindo as conexões de alimentação, luz de fundo e contraste.



Especificações e características:

– Controlador: HD44780
– Tensão de operação: 4,5V a 5,5VDC
– Corrente de operação: 1mA a 1,5mA
– Tensão no led do backlight (fundo): 1,5V a 5,5VDC
– Corrente no led do backlight (fundo): 75mA a 200mA
– Comunicação: 4bits ou 8bits

– Datasheet: Datasheet HD44780


Circuito display LCD 16x2


Ao conectar o display ao Arduino Uno, usaremos apenas 4 pinos de dados e 2 pinos de controle.

Para o ajuste de contraste usamos um potenciômetro de 10K ohms.

Se preferir , você também pode usar um potenciômetro para ajustar a luz de fundo, nos pinos 15 e 16 da tela.
Outra opção é usar um resistor em um desses pinos.

Código display LCD 16x2


O controle deste display pode ser feito utilizando a biblioteca LiquidCrystal, já integrada à IDE do Arduino.

No início do programa, definimos os pinos que são utilizados pelos displays, neste formato:



LiquidCrystal lcd(, , , , , )

No setup, inicializamos o display definindo o número de colunas e linhas com o comando lcd.begin(16,2).

Código Completo:


//Carrega a biblioteca LiquidCrystal
#include <LiquidCrystal.h>
//Define os pinos que serão utilizados para ligação ao display
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
 //Define o número de colunas e linhas do LCD
 lcd.begin(16, 2);
}
void loop()
{
 //Limpa a tela
 lcd.clear();
 //Posiciona o cursor na coluna 3, linha 0;
 lcd.setCursor(3, 0);
 //Envia o texto entre aspas para o LCD
 lcd.print("FILIPEFLOP");
 lcd.setCursor(3, 1);
 lcd.print(" LCD 16x2");
 delay(5000);
   
 //Rolagem para a esquerda
 for (int posicao = 0; posicao < 3; posicao++)
 {
   lcd.scrollDisplayLeft();
   delay(300);
 }
   
 //Rolagem para a direita
 for (int posicao = 0; posicao < 6; posicao++)
 {
   lcd.scrollDisplayRight();
   delay(300);
 }
}



Possíveis erros

Se o projeto não funcionar, verifique alguns dos possíveis:

  • Verifique se os jumpers estão na mesma coluna dos terminais do componente, fazendo assim a conexão;
  • Verifique se os jumpers estão conectados aos pinos corretos no Arduino;
  • Verifique se as conexões da tela LCD estão corretas;
  • Verifique se os pinos do potenciômetro estão totalmente inseridos na protoboard;
  • Verifique se o código foi carregado no IDE do Arduino.

Fonte
Suadica
Mais Dicas