Menu

005 - Arduino - Usando um LCD

Escrever no LCD é muito importante, pois informa ao usuário o que está acontecendo no sistema. Faremos, um programa básico que pode ser otimizado para qualquer processo.

O Hardware:


O código:


//--------------------------------------------------------------
//  Aulas Online - Arduino
//  Programa/hardware: 005 - Interface para o usuário LCD
//  Autor: Clodoaldo Silva
//  Revisão: 25Abr2020
//---------------------------------------------------------------
//---------------------------------------------------------------
//inclui a biblioteca do LCD
//http://www.arduino.cc/en/Tutorial/LiquidCrystalDisplay
#include <LiquidCrystal.h>
//---------------------------------------------------------------
//---------------------------------------------------------------
//DEFINIÇÕES DO HARDWARE DE DESENVOLVIMENTO
//Entradas
#define S3 A2

//Saídas
//não há

//DEFINE PINOS PARA LCD JÁ NA BIBLIOTECA
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
/*
   Respectivamente
   LCD RS pin to digital pin 12
   LCD Enable pin to digital pin 11
   LCD R/W pin to ground
   LCD D4 pin to digital pin 5
   LCD D5 pin to digital pin 4
   LCD D6 pin to digital pin 3
   LCD D7 pin to digital pin 2
*/
//---------------------------------------------------------------
void setup()
{
  // Inicializa o LCD com 16 colunas e 2 linhas
  lcd.begin(16, 2);

  //Configurando os pinos definidos como entrada.
  pinMode(S3, INPUT);

  //Configurando os pinos definidos como saídas.
  //não há

  // Mostra informações iniciais no display
  lcd.setCursor(0, 0); //escreve na primeira linha coluna, primeira linha
  lcd.print("Aulas Online      ");
  lcd.setCursor(0, 1); //escreve na primeira linha coluna, segunda linha
  lcd.print("Arduino           ");
  delay(2000);
}
//---------------------------------------------------------------
//---------------------------------------------------------------
void loop()
{
  if (digitalRead(S3) == HIGH) // Se a chave estiver pressionada o pino receberá 0.
  {

    lcd.clear(); // limpa o LCD
    lcd.setCursor(0, 0);
    lcd.print("Teste do LCD ..."); 
    delay(1000);
    lcd.setCursor(0, 1);
    lcd.print("LCD OK          ");
    delay(1000);
  }
  else // Senão
  {
    //mensagem no LCD
    lcd.setCursor(0, 0);
    lcd.print("Pressione S3     ");
    lcd.setCursor(0, 1);
    lcd.print(".............    ");
  }
}
//---------------------------------------------------------------