⭐ Beginner
⏱️ 15 minuten
Lichtknop
Je maakt een lichtknop. Eén keer drukken: de LED gaat aan. Nog een keer drukken: de LED gaat uit. Zo leer je hoe de Arduino een knop "voelt".
🧰 Wat heb je nodig?
🗺️ Aansluitschema
Volg de draden van de Arduino naar elk onderdeel. De kleuren van de draden mag je zelf kiezen.
| Van | Naar |
|---|---|
Arduino UNO · D2 |
Drukknop · 1 |
Drukknop · 2 |
Arduino UNO · GND |
Arduino UNO · D13 |
Weerstand 220 Ω · 1 |
Weerstand 220 Ω · 2 |
LED (lampje) · ANODE |
LED (lampje) · CATHODE |
Arduino UNO · GND |
🛠️ Zo bouw je het
- Zet de drukknop over de gleuf van je breadboard.
- Verbind één pootje met pin 2 en een pootje aan de andere kant met GND.
- Zet de LED met een weerstand van 220 Ω op pin 13, het korte pootje naar GND.
💻 De code
// Lichtknop
// Druk één keer op de knop: de LED gaat aan. Nog een keer: de LED gaat uit.
const int KNOP_PIN = 2; // De drukknop zit op pin 2 (andere kant naar GND)
const int LED_PIN = 13; // De LED zit op pin 13 (via de weerstand)
bool ledAan = false; // Onthoudt of de LED nu aan of uit is
bool vorigeKnop = HIGH; // Hoe de knop de vorige keer was
void setup() {
pinMode(KNOP_PIN, INPUT_PULLUP); // Ingang met ingebouwde weerstand: los = HIGH, ingedrukt = LOW
pinMode(LED_PIN, OUTPUT);
}
void loop() {
bool knop = digitalRead(KNOP_PIN);
// Alleen reageren op het moment dat je de knop indrukt
if (vorigeKnop == HIGH && knop == LOW) {
ledAan = !ledAan; // Omdraaien: aan wordt uit, uit wordt aan
digitalWrite(LED_PIN, ledAan ? HIGH : LOW);
delay(50); // Kort wachten tegen "stuiteren" van de knop
}
vorigeKnop = knop;
}
🧠 Wat doet de code?
- De knop zit op pin 2 met
INPUT_PULLUP. Los is de pin HIGH, ingedrukt LOW. - We onthouden of de LED aan of uit is in
ledAan. - Alleen op het moment dat je de knop indrukt, draaien we
ledAanom.
🎯 Probeer eens…
- Laat de LED knipperen in plaats van aan blijven
- Laat de LED na 10 seconden vanzelf weer uitgaan
- Tel hoe vaak er op de knop is gedrukt en laat het zien in de seriële monitor
🚀 Bouw dit project met Codey: open codey.online/nl/starter-kits/uno/projects/light-switch en klik op MAAK DIT. Dan staan de code en het aansluitschema meteen klaar.
Codey Online is een product van OTRONIC