Menu

002 - Arduino - Chave liga LED

Receber sinais provenientes de sensores, chaves ou botões é algo muito comum.Para fazermos isso com o Arduino, precisamos de mais uma função.

//--------------------------------------------------------------------------------------------------------------------
Função digitalRead()
Esta função permite ler o valor a partir de um pino digital especificado, sendo os valores possíveis HIGH (1) ou LOW (0).

Sintaxe:
digitalRead(pino)

Parâmetro:
pino é o número do pino cujo valor precisamos ler.

Esta função retorna um valor para o programa, alto (HIGH) ou baixo (LOW).
//--------------------------------------------------------------------------------------------------------------------

O hardware:


O código:
Programa padrão - Chave liga LED
//-------------------------------------------------------------------------
// Aulas online
// Projeto - Chave Liga LED
// Autor: Clodoaldo Silva
// REV: 04/Ago2020

//-------------------------------------------------------------------------
//Definição de I/O

//Entradas (nome e número do pino)
#define Chave_01 12

//Saídas (nome e número do pino)
#define LED_01 2

//-------------------------------------------------------------------------
void setup()
{
  pinMode(LED_01, OUTPUT); // Define o LED_01 como saída
  pinMode(Chave_01, INPUT);// Define a Chave_01 como entrada
}

//-------------------------------------------------------------------------
void loop()
{
  if(digitalRead(Chave_01) == HIGH) //Se a Leitura da Chave_01 for 1(HIGH) 
    digitalWrite(LED_01, HIGH); //Escreve 1 (HIGH) no LED_01
        
  else  //senão
    digitalWrite(LED_01, LOW); //Escreve 0 (LOW) no LED_01
  }
//-------------------------------------------------------------------------
Programa 002 - Chave pisca LED

Agora, que conhecemos as entradas uniremos os dois, ou seja, uma chave que se precionada fará com que o LED pisque.

 O código:
//-----------------------------------------------------------------------
// Aulas Online
// Projeto - Chave Pisca LED
// Autor: Clodoaldo Silva
// REV: 04/Ago2020
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
//Definição de I/O
//Entradas (nome e número do pino)
#define Chave_01 12

//Saídas (nome e número do pino)
#define LED_01 2
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
void setup()
{
  pinMode(LED_01, OUTPUT); // Define o LED_01 como saída
  pinMode(Chave_01, INPUT);// Define a Chave_01 como entrada
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
void loop()
{
  if(digitalRead(Chave_01) == HIGH) //Se a Leitura da Chave_01 for 1(HIGH) 
  {
    digitalWrite(LED_01, HIGH); //Escreve 1 (HIGH) no LED_01
    delay(500);  //Espera 500ms
    digitalWrite(LED_01, LOW); //Escreve 1 (LOW) no LED_01
    delay(500);  //Espera 500ms
  }     

  else  //senão
    digitalWrite(LED_01, LOW); //Escreve 0 (LOW) no LED_01
  }
//-----------------------------------------------------------------------

"A persistência é o caminho do êxito."
Charles Chaplin