Neste post você vai encontrar alguns testes básicos com o display LCD 16×2, um display muito comum com controlador HD44780, que se adapta aos mais diversos projetos, podendo ser usado com vários modelos de placas e microcontroladores como Arduino, Raspberry, PIC e etc.
Esse display LCD tem 16 colunas e 2 linhas, com backlight (luz de fundo) azul e letras na cor branca. Para conexão, são 16 pinos, dos quais usamos 12 para uma conexão básica, já incluindo as conexões de alimentação (pinos 1 e 2), backlight (pinos 15 e 16) e contraste (pino 3).
Na conexão do display ao Arduino Uno vamos utilizar apenas 4 pinos de dados (pinos digitais 2, 3, 4 e 5), e 2 pinos de controle (pinos digitais 11 e 12).
Para o ajuste do contraste, usamos um potenciômetro de 100K, mas você pode testar com outros valores como 10K ou 50K, por exemplo.
Se preferir, você também pode utilizar um potenciômetro para regular a luz de fundo, nos pinos 15 e 16 do display. Outra opção é usar um resistor em um desses pinos.
O controle desse display pode ser feito utilizando-se a biblioteca LiquidCrystal, já embutida na IDE do Arduino.
No início do programa (linha 8), definimos os pinos que serão utilizados pelo displays, nesse formato:
LiquidCrystal lcd(<pino RS>, <pino enable>, <pino D4>, <pino D5>, <pino D6>, <pino D7>)
No setup, inicializamos o display definindo o número de colunas e linhas com o comando
lcd.begin(16,2).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | //Programa: Teste de Display LCD 16 x 2 //Autor: ROBOHELP //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(" Robohelp "); 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); } } |
O programa acima posiciona o texto na posição desejada utilizando o comando lcd.setCursor(), e imprime a string na tela usando lcd.print(“Texto”). Depois de 5 segundos, são utilizados os comandos scrollDisplayLeft() e scrollDisplayRight() para “mover” os caracteres para a esquerda e para a direita, respectivamente.
Autor: http://www.arduinoecia.com.br/
Se você quer aprender mais sobre Eletrônica,
Microcontroladores, Arduino, Raspberry Pi e ESP8266
Microcontroladores, Arduino, Raspberry Pi e ESP8266
Comentários
Postar um comentário