const int LED_VERMELHO_1 = 23;
const int LED_AMARELO_1 = 22;
const int LED_VERDE_1 = 21;
const int LED_VERMELHO_2 = 19;
const int LED_AMARELO_2 = 18;
const int LED_VERDE_2 = 5;
const int LED_VERMELHO_3 = 17;
const int LED_AMARELO_3 = 16;
const int LED_VERDE_3 = 4;
const int potenciometro = 35;
void setup()
{
Serial.begin(9600);
pinMode(potenciometro, INPUT);
pinMode(LED_VERMELHO_1, OUTPUT);
pinMode(LED_AMARELO_1, OUTPUT);
pinMode(LED_VERDE_1, OUTPUT);
pinMode(LED_VERMELHO_2, OUTPUT);
pinMode(LED_AMARELO_2, OUTPUT);
pinMode(LED_VERDE_2, OUTPUT);
pinMode(LED_VERMELHO_3, OUTPUT);
pinMode(LED_AMARELO_3, OUTPUT);
pinMode(LED_VERDE_3, OUTPUT);
}
void loop()
{
change(analogRead(potenciometro) == 0, LED_VERMELHO_1);
change(isLowerThan(210 * 4), LED_AMARELO_1);
change(isLowerThan(315 * 4), LED_VERDE_1);
change(isLowerThan(420 * 4), LED_VERMELHO_2);
change(isLowerThan(535 * 4), LED_AMARELO_2);
change(isLowerThan(650 * 4), LED_VERDE_2);
change(isLowerThan(765 * 4), LED_VERMELHO_3);
change(isLowerThan(900 * 4), LED_AMARELO_3);
change(isLowerThan(1023 * 4), LED_VERDE_3);
}
bool isLowerThan(int value){
return analogRead(potenciometro) < value;
}
void change(bool condicao, int led){
condicao ? lower(led) : higher(led);
}
void lower(int led){
digitalWrite(led, LOW);
}
void higher(int led){
digitalWrite(led, HIGH);
}