quinta-feira, 2 de abril de 2015

Arduíno

Efeito no Leds Sequencial

Componentes:

10x Leds Vermelho
10x Resistor 100 ohms
1x   Potenciômetro 4,7k ohms
      Jumpers
1x  Arduíno


Sera o mesmo projeto do "Leds Sequencial", só que com potenciômetro para alterar a velocidade das luzes quando o código e executado.

1º Passo

Conectar os leds no proboard.

2º Passo

Conectar os resistores e o potenciômetro.

3º Passo

Código.

byte ledPin[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; // Cria um array para os pinos dos LEDs
int ledDelay; // intervalo entre as alterações
int direction = 1;
int currentLED = 0;
unsigned long changeTime;
int potPin = 2; // seleciona o pino de entrada para o potenciômetro
void setup() {
for (int x=0; x<10; x++) { // define todos os pinos como saída
pinMode(ledPin[x], OUTPUT); }
changeTime = millis();
}
void loop() {
ledDelay = analogRead(potPin); // lê o valor do potenciômetro
if ((millis() - changeTime) > ledDelay) { // verifica se transcorreram ledDelay ms desde a última alteração
changeLED();
changeTime = millis();
}
}
void changeLED() {
for (int x=0; x<10; x++) { // apaga todos os LEDs
digitalWrite(ledPin[x], LOW);
}
digitalWrite(ledPin[currentLED], HIGH); // acende o LED atual
currentLED += direction; // incrementa de acordo com o valor de direction altera a direção se tivermos atingido o fim
if (currentLED == 9) {direction = -1;}
if (currentLED == 0) {direction = 1;}
}

4º Passo

Conectar o Arduíno no protoboard.

















Nenhum comentário:

Postar um comentário