5. Sisend

Kood, mis nupu vajutamisel lülitab punase tule põlema

int punaneLed = 5;
int nupp = 2;

void setup() {
  pinMode(punaneLed, OUTPUT);
  pinMode(nupp, INPUT);
}

void loop() {
  
  if (digitalRead(nupp) == HIGH) {
    digitalWrite(punaneLed, LOW);
  }

  else {
    digitalWrite(punaneLed, HIGH);
  }
  
}

Kood, mis nupu vajutamisel vahetab tule värvi

int punaneLed = 5;
int rohelineLed = 0;
int sinineLed = 1;
int nupp = 2;

int varv = 1;

void setup() {
  pinMode(punaneLed, OUTPUT);
  pinMode(sinineLed, OUTPUT);
  pinMode(rohelineLed, OUTPUT);
  pinMode(nupp, INPUT);
  
  lylitaVarv();
}

void loop() {
  if (digitalRead(nupp) == HIGH) {
    varv = varv+1;
    if (varv == 7) {
      varv = 1;
    }
    lylitaVarv();
  }
  
  delay(50);
}

void lylitaVarv() {
  if (varv == 1) {
    analogWrite(sinineLed, 255);
    digitalWrite(punaneLed, LOW);
    analogWrite(rohelineLed, 255);
  }
  else if (varv == 2) {
    analogWrite(sinineLed, 127);
    digitalWrite(punaneLed, LOW);
    analogWrite(rohelineLed, 255);
  }
  else if (varv == 3) {
    analogWrite(sinineLed, 0);
    digitalWrite(punaneLed, HIGH);
    analogWrite(rohelineLed, 255);
  }
  else if (varv == 4) {
    analogWrite(sinineLed, 255);
    digitalWrite(punaneLed, HIGH);
    analogWrite(rohelineLed, 0);
  }
  else if (varv == 5) {
    analogWrite(sinineLed, 255);
    digitalWrite(punaneLed, LOW);
    analogWrite(rohelineLed, 127);
  }
  else if (varv == 6) {
    analogWrite(sinineLed, 255);
    digitalWrite(punaneLed, HIGH);
    analogWrite(rohelineLed, 85);
  }
}

ÜLESANNE: Proovi kirjutada kood, mis nupu vajutamisel lülitab tule põlema ja jätab selle 3 sekundiks põlema, seejärel lülitab välja.

Järgmine: 6. Analoog sisend

One thought on “5. Sisend

  1. Eelmisel lehel olnud paranduse LED punase kanali digitaalsuse kohta võiks siia ka sisse viia.

Lisa kommentaar

Sinu e-postiaadressi ei avaldata. Nõutavad väljad on tähistatud *-ga