Syntax
Met dank aan Natacha Gesquière
Syntax is vergelijkbaar met grammatica in een taal. Het bepaalt:
- hoe je code schrijft
- welke tekens je moet gebruiken
- in welke volgorde dingen moeten staan
Als je de syntax niet correct volgt, krijg je fouten bij het compileren.
In onderstaande tabel zie je voorbeelden van de syntax in Arduino.
Opdracht 1
In Arduino IDE is het de gewoonte om de code te schrijven onder de vorm van de camelCase.
Zoek online op wat de camelCase-schrijfwijze is. Los daarna de onderstaande oefening op.
Via hover (werkt niet) over oefening, toon alle functies.
// Fase 1: declaratie en initialisatie fase (wordt eenmalig doorlopen bij opstarten)
int wachttijd = 1000;
// Fase 2: setup fase (wordt eenmalig doorlopen bij opstarten)
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
// Fase 3: loop fase (wordt blijvend herhaald)
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(wachttijd);
digitalWrite(LED_BUILTIN, LOW);
delay(wachttijd);
}
Er zijn nu nog deeltjes van de code waarvan we niet weten waarvoor ze dienen.
Lees hieronder over hun functie door met je muis over de tekentjes te bewegen.
;
//
{}
Een puntkomma ; geeft aan dat de instructie daar eindigt.
Bijna elke lijn eindigt met ;
Met twee schuine streepjes // kan je opmerkingen schrijven.
Alles wat achter // geschreven wordt, wordt niet als code,
maar als commentaar gerekend.
Zo kan je bijvoorbeeld wat uitleg bij je code schrijven.
Wil je een groot stuk commentaar schrijven, dat meerdere lijntjes in neemt, dan werk je met een schuine streep en een sterretje als volgt:
/* Hier komt je extra info. */
Alles wat tussen de accolades {} staat,
hoort bij de void loop() of void setup().
Int staat voor integer.
Met int declareer je een geheel getal,
zoals je wachttijd in milliseconden.
Void is het Engelse woord voor leegte. Werk je met void, dan zal de instructie (zoals setup en loop) enkel instructies uitvoeren. In tegenstelling tot int, geeft het bijvoorbeeld geen getal weer.
Veelgemaakte syntax fouten zijn de volgende:
- Vergeten van een ; aan het einde van een regel.
- Verkeerd gebruik van hoofdletters (Arduino is hoofdlettergevoelig).
- Vergeten van een haakjes { of } ( of ).
- Verkeerde volgorde van parameters in functies.