Arduino Les 03 Knipperende LED

Dit is de eerste les in het programmeren van de Arduino™.


Als het goed is heb je al een versie van het Arduino™ programma geinstalleerd. Je kan in het programma diverse voorbeelden vinden, maar de basis van de programma’s die je gaat schrijven bestaat uit het volgende.

Elk programma start met een aanroep naar bestanden die nodig zijn om je uiteindelijke programma te laten werken. Dit laten we nu even achterwege, want we gaan nog geen hulp scripts gebruiken. Vlak hierna gaan we aangeven welke variabelen we gaan gebruiken in het programma. Bijvoorbeeld we gaan een uitgang van de Arduino™ gebruiken welke we in plaats van een nummer een naam willen gaan geven. We gaan uiteindelijk namelijk een uitgang laten schakelen tussen hoog en laag, zodoende kunnen we een LED laten knipperen.

Omdat er op het Arduino™ bordje al een vaste led is geplaatst op pin 13 gaan we die gebruiken. Hiervoor gaan we dus een naam bedenken en in deze les word dat “ledPin”. Als je ander soort signalen gaat aansturen of gebruiken kan je zo makkelijk namen geven aan de in- en uitgangen om ze uit elkaar te halen, bijvoorbeeld: tempSensor1, tempSensor2 en ventilatorUit3. De regel die wij hier als eerste schrijven luid:

int ledPin = 13;

Let hierbij goed op dat je de hoofdletters op de juiste plaats zet, deze tellen mee. Ledpin is dus anders dan ledpin.

Als deze basis parameters bekend zijn gaan we het eigenlijke programma schrijven wat altijd begint met de setup procedure, deze word alleen gedraaid als de microchip opgestart of gereset word. Om aan te geven dat er iets moet gebeuren tijdens het opstarten schrijf je als volgt:

void setup() { }

Alles wat je tussen de gekrulde haakjes zet word uitgevoerd tijdens het opstarten, je mag deze ook leeg laten, maar je moet de regel wel schrijven.

Hierna komt de Loop van het programma, loop betekend dat alles wat hiertussen staat steeds weer herhaald word.
Als we deze 3 delen achter elkaar zetten heb je nu:

int ledPin = 13;

void setup() {

}

void loop() {

}

Om te leren hoe je een Led aan moet sluiten kan je de basis les over Leds bekijken. Voor nu is onze Led al goed aangesloten dus we gaan hem gelijk aansturen. Hiervoor moeten we 2 commando’s gebruiken.

1) digitalWrite(); en
2) delay();

De eerst vertelt de microchip dat we een digitaal signaal geen geven. De microchip moet hiervoor wel weten waar hij dit signaal moet geven en of dit hoog of laag moet zijn. Hoog betekend in dit geval en bij de meeste microchips +5volt en laag 0volt dus massa. Om een hoog signaal te geven op onze ledPin schrijf je:

digitalWrite(ledPin,HIGH);

De Led gaat nu aan totdat je een ander commando geeft. Omdat deze regel elke keer herhaald word willen we deze loop even vertragen voordat we de Led weer uit zetten, dit doen we met het 2e commando als volgt:

delay(500);

Die 500 staat hier voor het aantal milliseconden dat de loop vertraagd moet worden. 1000 is 1 seconden en 500 is dus een halve seconden. Hier a zetten we de Led weer uit met het eerste commando en hier a weer een vertraging. Het programma tot zover dus:

int ledPin = 13;

void setup() {

}

void loop() {
digitalWrite(ledPin,HIGH);
delay(500);
digitalWrite(ledPin,LOW);
delay(500);
}

Geef een reactie