Het circuit

Een algoritme gaat natuurlijk samen met het circuit. In dit voorbeeld maken we gebruik van:

  • GPIO13  voor het rode ledje
  • GPIO12  voor het gele ledje
  • GPIO11  voor het groene ledje

GIF TE GROOT video??

Het algoritme

Bij deze schakeling zou het algoritme er zo kunnen uitzien.

Een algoritme is normaal onafhankelijk van het platform waarmee het circuit gemaakt wordt. Wij wijken hiervan af en geven het algoritme specifiek voor de Arduino UNO.

We weten reeds dat een Arduino Sketch steeds de functieblokken setup() en loop() moet hebben.
We gaan dit project de setup() in het algoritme steeds een groene achtergrond geven, en de loop() geel.

Circuit Algoritme1

Gebruik van variabelen

In plaats van steeds te verwijzen naar de verschillende GPIO's kunnen we ook gebruik maken van variabelen. DIt gaat je algoritme en je sketch leesbaarder en makkelijk aanpasbaar maken.

Een variabele in een Arduino-sketch is een plek in het geheugen waar je een waarde (zoals een getal of sensorwaarde) tijdelijk kunt opslaan en later kunt gebruiken.

Wat moet een variabele voldoen?

  1. Type – Je moet het datatype aangeven (bijv. int, float).
    Voorbeeld: int snelheid = 100;
  2. Naam – Een duidelijke, unieke naam (geen spaties of speciale tekens, behalve _).
  3. Waarde – Optioneel direct een beginwaarde toekennen.

Variabelen moeten in een Arduino sketch eerst gedeclareerd, aangemaakt worden. De variabelen die wij gaan aanmaken zijn variablelen die overal in de sketch kunnen gebruikt worden. Dit worden globale variabelen genoemd. Globale variabelen worden in het begin van de sketch gedeclareerd, dus nog voor de setup()-functie.

In dit project gaan we in het algoritme declaraties een blauwe achtergrond geven.

Gebruiken we variabelen dan zou het algoritme er zo kunnen uitzien.

Opmerking:

De namen van variabelen kunnen lang zijn, zeker als je gebruik maakt van zinvolle benamingen. Om deze namen duidelijk leesbaar te maken gebruikt men in een Arduino sketch meestal gebruik van de camel case notatie. 

  • snelheidWagen1
  • beginTemperatuurReactor

Ben je gewoon vanuit een andere programmeertaal om gebruik te maken van de snake notatie, dan mag dit natuurlijk ook.

Circuit Algoritme2