Estou com um projeto para faculdade porém não consigo fazer, existe 6 LED e através de 2 botões + e - eu acendo esses led, conforme eu apertar o botão + cada clique é um led que ascende de 1 ate chega no 6, ( vai apagando e acendendo na ordem ficando sempre apenas 1 aceso) ao chega no 6 precisa apertar o - para voltar até chega no 1, pode me ajuda com o código ?
//CONEXÕES ELÉTRICAS:
// Pin 2-->botão del(+)-->GND
// Pin 3-->botão del(-)-->GND
// Pin 4 --> resistência 220 ohms --> ânodo led, cátodo led --> GND
// Pin 5 --> resistência 220 ohms --> ânodo led, cátodo led --> GND
// Pin 6 --> resistência 220 ohms --> ânodo led, cátodo led --> GND
// Pin 7 --> resistência 220 ohms --> ânodo led, cátodo led --> GND
// Pin 8 --> resistência 220 ohms --> ânodo led, cátodo led --> GND
// Pin 9 --> resistência 220 ohms --> ânodo led, cátodo led --> GND
int led =4; // contendra el nº del led encendido
void setup() {
//Definir os pinos como entradas e ligar a resistência.
//interno ao +, se o botão não for pressionado a sua leitura será HIGH.
pinMode (2, INPUT_PULLUP);
pinMode (3, INPUT_PULLUP);
//Definir los pinos como salidas.
pinMode (4, OUTPUT);
pinMode (5, OUTPUT);
pinMode (6, OUTPUT);
pinMode (7, OUTPUT);
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
}
void loop() {
//Se o botão de aumento for pressionado, tudo o que estiver entre o {} será executado.
if (digitalRead (2) == LOW) {
led ++; //aumentar o número de leds
if (led > 9){led = 9;} //limite superior
digitalWrite (led - 1, LOW);// desligar anterior
digitalWrite (led , HIGH); // ligue o led
}
//Se o botão diminuir for pressionado, tudo o que estiver entre o {} será executado.
if (digitalRead (3) == LOW) {
led --;//diminuir o número de leds
if (led < 4){led = 4;} //limite inferior
digitalWrite (led + 1, LOW);//desligue o topo led
digitalWrite (3, HIGH);// ligue o led
}
}
Saudações.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.