Hub 007 - Acender e apagar leds por comunicação serial com o Arduino

Básico - Hub 007

Leds são acionados pelo teclado do computador

 

Sugerido por: Vinicius Medeiros {source} ENVIAR SUGESTÃO{/source}

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.

{source}




style="display:block"
data-ad-client="ca-pub-0154803398463315"
data-ad-slot="6385083147"
data-ad-format="auto">


{/source}

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: {source} DOWNLOAD - hb007.ino{/source}

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

{source}

{/source}

Desafios

Com base neste projeto, resolva o seguinte desafio: {source} {/source}

{source}



style="display:block"
data-ad-client="ca-pub-0154803398463315"
data-ad-slot="6385083147"
data-ad-format="auto">


{/source}

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

Comentários

×

Infomações do site / SEO








×

Adicionar Marcadores