Stap 6 - Wachten maar

In onderstaande codeblok hebben we alle code voor de stap wachten verder ingevuld. Dit is de tweede stap in ons programma.

void loop(){
  if(stap == "nieuw") {
    // Kiezen we een random wachttijd tussen 2 en 10 seconden
    wachttijd = millis() + random(2,11) * 1000;

    // Als we dat gedaan hebben, kunnen we gaan wachten.
    stap = "wachten";

  } else if(stap == "wachten") {
    // Zolang we aan het wachten zijn, moet het LEDje branden
    digitalWrite(A3, HIGH);

    // Alleen als de wachttijd verstreken is..
    if(millis() >= wachttijd) {
      // Gaan we naar de volgende stap; tellen.
      stap = "tellen";
    }

  } else if(stap == "tellen") {
    // Nu zijn we bij de laatste stap
  }
}

In de eerste regel zetten we het LEDje aan door een HIGH te schrijven naar pin A3 met behulp van digitalWrite().

Vervolgens controleren we met een if-statement of we al naar de volgende en laatste stap ( tellen) kunnen.

Tip: Het controleren of de willekeurig gekozen wachttijd al voorbij is doen we door te kijken naar het huidige aantal milliseconden dat de Marvin al aan staat. Dit doen we met millis(). Als de waarde die hieruit komt groter of gelijk aan (>=) onze eerder bepaalde wachttijd is, kunnen we door naar de volgende stap.

results matching ""

    No results matching ""