#define LED 11
int numero = 1; // inicializa a variável numero com valor 1
void setup() {
pinMode(LED, OUTPUT); // define o LED como saída
Serial.begin(9600); // inicia a comunicação serial
}
void loop() {
int valor = 0;
if (Serial.available() > 0) { // verifica se há dados disponíveis no monitor serial
valor = Serial.read() - '0'; // lê o valor digitado no monitor serial e converte para inteiro
if (valor >= 1 && valor <= 3) { // verifica se o valor digitado é válido
numero = valor; // atualiza o valor da variável numero
}
}
switch (numero) { // executa a ação correspondente ao valor da variável numero
case 1:
analogWrite(LED, 255);
Serial.println("Aceso");
delay(1500);
analogWrite(LED, 0);
Serial.println("Apagado");
delay(1500);
break;
case 2:
analogWrite(LED, 127);
Serial.println("Aceso");
delay(1500);
analogWrite(LED, 255);
Serial.println("Aceso");
delay(1500);
analogWrite(LED, 0);
Serial.println("Apagado");
delay(1500);
break;
case 3:
analogWrite(LED, 85);
Serial.println("Aceso");
delay(1500);
analogWrite(LED, 170);
Serial.println("Aceso");
delay(1500);
analogWrite(LED, 255);
Serial.println("Aceso");
delay(1500);
analogWrite(LED, 0);
Serial.println("Apagado");
delay(1500);
break;
default:
break;
}
Serial.print("Estado atual: ");
Serial.println(numero); // exibe o valor atual da variável numero no monitor serial
}