abc Arduino - primjeri /EXAMPLES/
LED diode - Izbor blinkanja ili smjera uključenja je sa dva prekidač /LEDS - BLINK - ON/OFF - 2 SWITCH/ 6

Ex.5.3. LED diode se ukljucuju slijeva u desno kad je jedan prekidac uključen. Kad je drugi prekidač uključen LED diode se uključuju u drugom smijeru. Kad su oba prekidača uključen LED diode blinkaju. Za isključene prekidače se iskljucuju i LED diode.

Opis rješenja: Opsezi za ovaj primjer su
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;
- Prekidač /SWITCH/
- Arduino modul.

Listing programa :

// LED se ukljucuju slijeva u desno za jedan prekidac, a za drugi obrnuto. Kad su oba prekidaca ukljucena LED diode blinkaju. Za iskljucene prekidace se iskljucuju i LED diode.
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 ON:
    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) {
    // turn LED on:
    digitalWrite(led3, HIGH); // LED ON
    delay(300);
    digitalWrite(led3, LOW);  // LED OFF
    digitalWrite(led2, HIGH); // LED ON7
    delay(300);
    digitalWrite(led2, LOW);  // LED OFF
    digitalWrite(led1, HIGH); // LED ON
    delay(300);
    digitalWrite(led1, LOW);  // LED OFF

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

  } else {
    digitalWrite(led1, LOW); // LED OFF
    digitalWrite(led2, LOW); // LED OFF
    digitalWrite(led3, LOW); // LED OFF
  }
}

Index