Stap 2 - Signalen maken

Nu moeten we dit natuurlijk vertalen naar code die de Marvin begrijpt. We weten al dat je met delay() code kunt uitstellen, maar als je dat voor ieder signaal moet doen, wordt je code wel erg lang!

Laten we twee nieuwe functies maken die zelf bepalen of het LEDje een lang of kort signaal geeft. Maak een nieuw project en typ daarin de volgende code:

LET OP de setup() en loop() functies worden er automatisch al ingezet. Je hoeft dus alleen nog maar de pinMode() functie in setup() op te schrijven.

void setup() {
  // We gebruiken pin A3 wederom als OUTPUT
  pinMode(A3, OUTPUT);

}

void loop() {
  // put your main code here, to run repeatedly:

}

// Om het eenvoudiger te maken,
// delen we het op in losse functies.

void lang() {
  // De functie lang() laat het ledje branden,
  // wacht 1 seconde en zet 'm weer uit.

  digitalWrite(A3, HIGH);
  delay(1200);
  digitalWrite(A3, LOW);

  // vervolgens nog een halve seconde
  // wachten voordat we verder gaan
  delay(500);
}

void kort() {
  // De functie kort() laat het ledje branden,
  // wacht een halve seconde en zet 'm weer uit.

  digitalWrite(A3, HIGH);
  delay(300);
  digitalWrite(A3, LOW);

  // vervolgens nog een halve seconde
  // wachten voordat we verder gaan
  delay(500);
}

Hierboven hebben we twee extra functies gemaakt lang() en kort(). Beide functies doen eigenlijk hetzelfde; namelijk het LEDje aanzetten, even wachten en het ledje vervolgens weer uitzetten.

Het enige wat verschilt is hoe lang het LEDje brandt. Als je goed kijkt naar de functies herken je de functies uit opdracht A: digitalWrite() zet een pin aan of uit, en delay() laat de Marvin even wachten.

results matching ""

    No results matching ""