Básico - Hub 001

Selecione um dos leds utilizando um push button

 

Sugerido por: Artur Tsinivskyy

Objetivo

Utiliza-se 2 leds e um botão. Sempre que pressionar o botão acenderá um led e o outro ficará apagado. Ao clicar novamente o botão haverá a troca dos leds sucessivamente.

Componentes necessários

Referência

Componente

Quantidade

Imagem

Observação

Protoboard Protoboard 830 pontos

Comprar

1 Resultado de imagem para protoboard 830v

No mínimo utilizar protoboard com 830 pontos

Jumpers Kit cabos ligação macho / macho

Comprar

1  
Led 5mm

LED 5mm

Comprar

2

2 LED alto brilho ou difuso (qualquer cor)

Você poderá utilizar também LEDs de 3 mm na cor que desejar.

Resistor

Resistor

Comprar

2

Resistores 150Ω ou superiores

Se precisar usar outros valores, calcule o resistor apropriado para o led utilizado - Calcular Resistor ou use a Tabela Resistor para Leds

Push Button

Push button 6X6X5mm

Comprar

1  
Arduino UNO R3 Arduino UNO Original

Comprar

 

Arduino UNO Similar

Comprar


 

1

Você poderá utilizar uma placa Arduino UNO original ou similar

Montagem do Circuito

 Referência

Projeto 04a - Push Button como interruptor - liga e desliga (padrão para pull-down ou pull-up)

Código do Projeto (Sketch)

Faça o dowload e abra o arquivo hub001.ino no IDE do Arduino:

Ou se preferir, copie e cole o código abaixo no IDE do Arduino:

/*******************************************************************************
*
*    HB 01 - Trocando Leds com push button
*        Sugerido por Artur Tsinivskyy
*         http://squids.com.br/arduino
*
*******************************************************************************/

const int pinButton = 8;
int estado;
int seletor = 0;
int led = 2;
int tempo = 200;
int in = 0;

void setup(void) {
 pinMode(2, OUTPUT); 
 pinMode(12, OUTPUT); 
 pinMode(pinButton, INPUT_PULLUP); 
}

void loop(){
 if (in==0) {
    estado = digitalRead(pinButton); //Lê o botão se está HIGH ou LOW
    if (!estado) {in=1;}
 } else { 
    //Push button função liga / desliga  
    estado = digitalRead(pinButton); //Lê o botão se está HIGH ou LOW
    
    digitalWrite(led, LOW); // apaga botão

    if (!estado) {
      seletor = !seletor;
      while (!digitalRead(pinButton)) {  } //espera soltar o botão
      delay(10); 
    }

    if (seletor == 1) {led =2;
    } else {led = 12;} 

    digitalWrite(led, HIGH); // acende botão alterado 
 }
}

Demonstração

 

Desafios

Com base neste projeto, resolva o seguinte desafio:

O anúncio abaixo ajuda a manter o Squids Arduino funcionando

Compartilhe:

Doações

Contribua pra manter o site online :)

Inscreva-se no canal Squids

Você está preparado?

Squids Arduino News

Desafio 82 - Projeto 92 Relógio digital com temperatura, umidade e datas Com base no projeto Projeto 92 - Criando um relógio digital com OLED SSD1306, módulo DS3231 e Arduino resolva os seguin...

Básico - Projeto 92 Criando um relógio digital com Oled SSD1306 - bibliotecas Adafruit Objetivo O objetivo neste projeto é criar um relógio digital usando um display OLED junto com o Real Time ...

Desafio 81 - Projeto I09 Controlando 2 motores com driver L9110s (menu via display LCD) Com base no projeto I09 - Motores DC com Driver Ponte H L9110 e Arduino - Controle de 4 velocidades pelo ...

Intermediário - Projeto 09 Motores DC com driver ponte H L9110s e Arduino - 4 velocidades Objetivo Neste tutorial vamos mostrar como controlar a velocidade de 2 motores CC (corrente contínua) a...

Básico - Hub 008 Usar o módulo display 4 dígitos 74HC595   Sugerido por: Tim Santos Objetivo O objetivo é adaptar o  Projeto 63 - Usando o módulo TM1637 (display 4 dígitos) com Arduino e u...

Outros artigos

Mais: Desafios Projetos Básicos Projetos Intermediários Básico

Topo