abc Arduino - primjeri /EXAMPLES/
LED diode - Smjer uključenja određuju dva taster - PULL DOWN /LEDS - ON/OFF - 2 PUSH BUTTON/ 5

Ex.5.5. LED diode se uključuju i isključuju jedina jedna po jedna. Pritiskom na taster svjetlost se pomjera u jednom smjera, pritiskom na drugi taster mjenja se smjer pojavljivanja svjetlosti. Ulaz je realizovan po principu PULL DOWN otplornika.

Opis rješenja: Rješenje je realizovano sa pet LED diode i dva tastera /PUSH BUTTON/. Pritiskom na taster /PUSH BUTTON/ LED dioade se uključuju i isključuju u jednom smjeru, a pritiskom na drugi tatster mjera se smjer uključenja/isključenja Led diode. Svaki taster ima svoj smjer pojave svjetlosti. Kad nije pritisnutno ni jedan taster ili su pritisnuta oba tastera LED diode su isključene.

Legenda:
- LED ON - uključene LED diode
- LED OFF - isključene LED diode

Šema povezivanja: Ispis

Elementi:
- LED dioda 3 kom;
- Otpornik 220 Ω 3 kom;
- Taster /PUSHBUTTON/
- Arduino modul.

Listing programa :

// LED diode se ukljucuju s lijeva dok je taster1 pritisnut, a sdesna dok je taster2. Za ostale stanja tastera su iskljucene
int led1 = 7;
int led2 = 8;
int led3 = 9;
int taster1 = 3;
int taster2 = 4;
int stanjetastera1 = 0;
int stanjetastera2 = 0;

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(taster1, INPUT);
  pinMode(taster2, INPUT);
}

void loop() {
  stanjetastera1 = digitalRead(taster1);
  stanjetastera2 = digitalRead(taster2);
  if (stanjetastera1 == HIGH && stanjetastera2 == LOW) {
    // LED diode ON u jednom smjeru:
    digitalWrite(led1, HIGH); // LED ON
    delay(300);
    digitalWrite(led1, LOW);  // LED OFF
    digitalWrite(led2, HIGH); // LED ON
    delay(300);
    digitalWrite(led2, LOW);  // LED OFF
    digitalWrite(led3, HIGH); // LED ON
    delay(300);
    digitalWrite(led3, LOW);  // LED OFF

  } else if (stanjetastera1 == LOW && stanjetastera2 == HIGH) {
    // LED diode ON u drugom smjeru:
    digitalWrite(led3, HIGH); // LED ON
    delay(300);
    digitalWrite(led3, LOW);  // LED OFF
    digitalWrite(led2, HIGH); // LED ON
    delay(300);
    digitalWrite(led2, LOW);  // LED OFF
    digitalWrite(led1, HIGH); // LED ON
    delay(300);
    digitalWrite(led1, LOW);  // LED OFF

  } else {
    // za ostala stanja prekidaca LED diode su iskljucene
    digitalWrite(led1, LOW); // LED OFF
    digitalWrite(led2, LOW); // LED OFF
    digitalWrite(led3, LOW); // LED OFF
  }
}

Index