Básico - Hub 007

Leds são acionados pelo teclado do computador

 

Sugerido por: Vinicius Medeiros ENVIAR SUGESTÃO

Objetivo

O projeto é composto por 3 leds, um verde, um amarelo e um vermelho. Ao digitar a letra "A" no teclado do computador, o led verde piscará 2 vezes; ao digitar a letra "B", o led amarelo piscará 3 vezes; e finalmente, ao digitar a letra "C", o led vermelho acenderá se estiver apagado ou desligará se estiver aceso. Obs.: As letras digitadas deverão ser maiúsculas.

Componentes necessários

Referência

Componente

Quantidade

Imagem

Observação

Protoboard Protoboard 830 pontos 1 Resultado de imagem para protoboard 830v

No mínimo utilizar protoboard com 830 pontos

Jumpers Kit cabos ligação macho / macho 1    
Led 5mm

LED 5mm

3 Resultado de imagem para led vermelho

No projeto utilizamos 3 leds, um verde, um amarelo e um vermelho

Você também poderá utilizar LEDs de 5 ou 3 mm nas cores que desejar, alto brilho ou difuso.

Resistor

Resistor

3  

3 Resistores 150Ω (ou superiores)

Obs.: calcule o resistor apropriado para o led utilizado - Calcular Resistor ou use a Tabela Resistor para Leds

Arduino UNO R3 Arduino UNO 1

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

Montagem do Circuito

 

Referências

Hub 005 - Acender leds por comunicação serial - Arduino

Comunicação Serial - Documentação Arduino

Código do Projeto (Sketch)

Faça o download e abra o arquivo hub007.ino no IDE do Arduino: DOWNLOAD - hb007.ino

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

/* *************************************
*   Hub 007 - Ativar leds por comunicação serial com o Arduino
*   Autor: Angelo Luis Ferreira
*	30/09/2020
*   http://squids.com.br/arduino
*
*************************************** */

const byte ledRed = 13;
const byte ledYellow = 9;
const byte ledGreen = 6;

char letter;
boolean control = 0;
boolean state = 0;

void setup() {
  Serial.begin(9600); // incia a comunicação serial
  pinMode(ledRed, OUTPUT);
  pinMode(ledYellow, OUTPUT);
  pinMode(ledGreen, OUTPUT);
  Serial.println("Digite: ");
  Serial.println("A para piscar o led verde");
  Serial.println("B para piscar o led amarelo");
  Serial.println("C para acender ou apagar o led vermelho");
}

void loop() {
  if (Serial.available()) {
    letter = Serial.read();
    control = 0;
    Serial.print("Char recebido: ");
    Serial.println(letter);    
  } 
  
  // pisca led verde
  if (letter == 'A' && control == 0) {
    for (byte i=0;i<2;i++) {
		digitalWrite(ledGreen, HIGH);
   		delay(1000); // Wait for 1000 millisecond(s)
   		digitalWrite(ledGreen, LOW);
   		delay(1000); // Wait for 1000 millisecond(s) 
    }
    control = 1;
  }
  
  // pisca led amarelo
  if (letter == 'B' && control == 0) {
    for (byte i=0;i<3;i++) {
		digitalWrite(ledYellow, HIGH);
   		delay(1000); // Wait for 1000 millisecond(s)
   		digitalWrite(ledYellow, LOW);
   		delay(1000); // Wait for 1000 millisecond(s) 
    }
    control = 1;
  }
  
  // muda estado led vermelho
  if (letter == 'C' && control == 0) {
  	state = !state;
    digitalWrite(ledRed, state);
    control = 1;
  }
  
} 

Obs. Ao abrir o monitor serial do IDE do Arduino visualizaremos os valores digitados:

Simulação

Desafios

Com base neste projeto, resolva o seguinte desafio:

Compartilhe:

Doações

Contribua pra manter o site online :)

Inscreva-se no canal Squids

Squids Arduino News

Básico - Hub 011 Acertar número aleatório usando potenciômetro - jogo   Sugerido por: Juliandrew Facundo Para iniciar o jogo deve-se pedir ao usuário que digite o valor 1 no teclado do comp...

Básico - Projeto 96 Acender e apagar um led batendo palmas consecutivas Objetivo O objetivo deste projeto é criar um circuito para acender e apagar um led ao bater seguidamente um número especí...

Desafio 87 - Projeto Maker 001 Controlando 2 motores com sensor de toque caseiro Com base no projeto M01 - Aprenda a fazer um sensor de toque de 4 teclas com Arduino resolva os seguintes desafi...

Básico - Hub 010 Fazer Piscar 2 usando a função millis()   Sugerido por: Jhulio Cesar Objetivo Monte um circuito com 2 LEDs (um vermelho e um verde) e faça um programa blink "duplo", que f...

Desafio 86 - Projeto hub009 Piscar led de acordo com o potenciômetro usando millis() Com base no Hub 009 - Piscar led de acordo com o potenciômetro em intervalos de 0.5 a 3 segundos - Arduino r...

Outros artigos

Mais: Básico Projetos Básicos Desafios Arduino Maker Dicas de Software

Você está preparado?

Topo