Atenție bolnav de electronică

Pagina pasionaților de electronică

0

Lumină dinamică

/*
 * In acest sketch realizam o lumina dinamica care consta din 6 LED-uri
 * iar LED-urile se aprind unul dupa celalalt si apoi procesul incepe din nou
 */

// (Array) pinii unde sunt conectate LED-urile.
 int LEDPins[] = {2, 3, 4, 5, 6, 7};

// index => LED-ului care este aprins în prezent.
// index 5 este ultimul led din array
 int ledactual = 5;

 // timp in milisecunde, cat ledul este aprins
 int timppeled = 200;

 // Timpul cand a fost aprins ultimul LED
 unsigned long ultimastare = 0;
 
void setup() {
  for(int i = 0; i < 6; i++) {
   // setare toti pinii unde sunt conectate led-urile ca output
   pinMode(LEDPins[i], OUTPUT);
  }

}

void loop() {
  //timp actual
  unsigned long timp = millis();
  if (timp - ultimastare >= timppeled) {
    digitalWrite(LEDPins[ledactual], LOW);
    ledactual = (ledactual + 1) % 6;
   digitalWrite(LEDPins[ledactual], HIGH);
   ultimastare = timp;
  }

}

Autor: Bogdan  Gewald

Lucrez de 18 ani în industria electronică. Locuiesc în Germania, într-un oraș mic de pe lângă Frankfurt am Main și lucrez ca dezvoltator hardware și software la o firmă care dezvoltă soluții pentru industria energetică de 50 de ani.

Acum tu urmezi!

Vrei să adaugi ceva, ai sugestii, ai găsit greşeli sau postarea nu mai este actuală? Atunci aștept cu nerăbdare comentariul tău.

Desigur, poți recomanda acest articol. Sunt recunoscător pentru orice sprijin!