Considerando o circuito mostrado na figura,escreva um sketch(programa) que receba um caractere pela entrada serial.Se o caractere for 'v' o LED vermelho deve ligar e se ele já estiver ligado irá apagar,repita essa lógica com os outros LED's alterando a letra de acionamento do LED como na imagem assim como o amarelo corresponde a 'a' e o laranja a 'j'. o estado de cada LED deverá ser mostrado no monitor serial.
https://www.tinkercad.com/things/5NBDilv06DQ
int LEDV = 2;
int LEDA = 3;
int LEDL = 4;
void setup() {
Serial.begin(9600); //configura comunicação serial com 9600 bps
pinMode(LEDV,OUTPUT); //configura pino do led como saída
pinMode(LEDA,OUTPUT);
pinMode(LEDL,OUTPUT);
Serial.println("Digite a Letra do Led que deseja Alterar (V-Vermelho A-Amarelo L-Laranja)");
}
void loop() {
if (Serial.available()) //se byte pronto para leitura
{
switch(Serial.read()) //verifica qual caracter recebido
{
case 'V': //caso 'V'
digitalWrite(LEDV,!digitalRead(LEDV));
break;
case 'A': //caso 'A'
digitalWrite(LEDA,!digitalRead(LEDA));
break;
case 'L': //caso 'L'
digitalWrite(LEDL,!digitalRead(LEDL));
break;
default:
Serial.println("Por favor, digite apenas V, A ou L");
break;
}
if (digitalRead(LEDV)== LOW)
{Serial.println("Vermelho: Desligado");}
else
{Serial.println("Vermelho: Ligado"); }
if (digitalRead(LEDA)== LOW)
{Serial.println("Amarelo : Desligado");}
else
{Serial.println("Amarelo : Ligado"); }
if (digitalRead(LEDL)== LOW)
{Serial.println("Laranja : Desligado");}
else
{Serial.println("Laranja : Ligado"); }
Serial.println();
Serial.println("Repita a operacao:");
}
}
int LEDA = 3;
int LEDL = 4;
void setup() {
Serial.begin(9600); //configura comunicação serial com 9600 bps
pinMode(LEDV,OUTPUT); //configura pino do led como saída
pinMode(LEDA,OUTPUT);
pinMode(LEDL,OUTPUT);
Serial.println("Digite a Letra do Led que deseja Alterar (V-Vermelho A-Amarelo L-Laranja)");
}
void loop() {
if (Serial.available()) //se byte pronto para leitura
{
switch(Serial.read()) //verifica qual caracter recebido
{
case 'V': //caso 'V'
digitalWrite(LEDV,!digitalRead(LEDV));
break;
case 'A': //caso 'A'
digitalWrite(LEDA,!digitalRead(LEDA));
break;
case 'L': //caso 'L'
digitalWrite(LEDL,!digitalRead(LEDL));
break;
default:
Serial.println("Por favor, digite apenas V, A ou L");
break;
}
if (digitalRead(LEDV)== LOW)
{Serial.println("Vermelho: Desligado");}
else
{Serial.println("Vermelho: Ligado"); }
if (digitalRead(LEDA)== LOW)
{Serial.println("Amarelo : Desligado");}
else
{Serial.println("Amarelo : Ligado"); }
if (digitalRead(LEDL)== LOW)
{Serial.println("Laranja : Desligado");}
else
{Serial.println("Laranja : Ligado"); }
Serial.println();
Serial.println("Repita a operacao:");
}
}
Nenhum comentário:
Postar um comentário