In dit project ga je een knop maken die het licht aan gaat zetten als je er op drukt. oftewel een momentschakelaar. Hiervoor heb je nodig

We gaan nu beginnen met bouwen, maak je breadboard klaar door de plus en min kanten van de arduino te verbinden. Doe dit zo:


Je weet welke componenten je nodig hebt, probeer nu zelf de componenten te verbinden,
lukt dat niet kijk dan eerst naar de schematische weergave (onthoud dat je deze pins niet hoeft te gebruiken, je mag ook andere gebruiken).
Kom je echt niet verder kijk dan naar het antwoord bij de antwoorden.
Laten we aan de slag gaan met programmeren!
Volg de stappen hieronder om de opdracht uit te voeren. Zorg ervoor dat je de knop als sensor gebruikt en niet als schakelaar. Dit betekent dat de knop een aparte stroomkring heeft, zodat het lampje blijft branden, zelfs als de stroomkring in de knop wordt doorbroken.
Boven de setup() functie initialiseer je een variabele met de volgende code:
int status = 0;
De naam van de variabele is status, maar je kunt deze een andere naam geven als je wilt, zolang deze uit letters bestaat en geen speciale tekens bevat. Deze variabele zal de status van de knop opslaan.
In de setup() functie stel je in welke pinnen je gebruikt en of ze als INPUT of OUTPUT zijn ingesteld.
Voorbeeld:
void setup() {
pinMode(4, OUTPUT); // LED is verbonden met pin 4
pinMode(2, INPUT); // Knop is verbonden met pin 2
}
In de loop() functie gebruik je de functie digitalRead() om de status van de knop te lezen. Koppel de gelezen waarde aan de variabele status:
void loop() {
status = digitalRead(2); // Lees de status van de knop verbonden met pin 2
}
Gebruik een if-else-structuur om te bepalen wat er gebeurt op basis van de status van de knop:
if (status == 0) {
digitalWrite(4, HIGH); // Zet de LED aan
} else {
digitalWrite(4, LOW); // Zet de LED uit
}
Hier controleert if (status == 0) of de knop wordt ingedrukt (waarbij een waarde van 0 aangeeft dat de stroomkring is gesloten).
Werkt het niet?
Kijk in de antwoorden voor de oplossing
Veel succes!
Werkt het niet?
Kijk in de antwoorden voor de oplossing