int led1 = 13; // Porta onde o led será inserido
int led2 = 12;
int led3 = 11;
char leitura;
char letter;
boolean control = 0;
boolean state = 0;
void setup() {
Serial.begin(9600); // incia a comunicação serial
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
Serial.println("Digite: ");
Serial.println("A para piscar o led verde");
Serial.println("B para piscar o led amarelo");
Serial.println("C para piscar o led vermelho");
Serial.println("D para apagar o led verde");
Serial.println("E para apagar o led amaralo");
Serial.println("F para apagar o led vermelho");
Serial.println("G para acender o led verde");
Serial.println("H para acender o led amarelo");
Serial.println("I para acender 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++) {
while (true){
digitalWrite(led3, HIGH);
delay(500); // Wait for 1000 millisecond(s)
digitalWrite(led3, LOW);
delay(500); // Wait for 1000 millisecond(s)
}
}
control = 1;
}
// pisca led amarelo
if (letter == 'B' && control == 0) {
for (byte i=0;i<3;i++) {
while (true){
digitalWrite(led2, HIGH);
delay(500); // Wait for 1000 millisecond(s)
digitalWrite(led2, LOW);
delay(500); // Wait for 1000 millisecond(s)
}
}
control = 2;
}
if (letter == 'C' && control == 0) {
for (byte i=0;i<3;i++) {
digitalWrite(led1, HIGH);
delay(1000); // Wait for 1000 millisecond(s)
digitalWrite(led1, LOW);
delay(1000); // Wait for 1000 millisecond(s)
}
control = 1;
}
// muda estado led vermelho
if (letter == 'D' && control == 1) {
state = !state;
digitalWrite(led3, state);
control = 0;
}
}