Digitale inputs en outputs
Aan het einde van dit hoofdstuk kun je:
- Uitleggen wat digitale signalen zijn.
- Werken met digitale outputs (zoals LED's) en inputs (zoals knoppen).
- Een programma schrijven dat reageert op gebruikersinvoer via een knop.
Werken met een LED
Digitale Signalen
- Digitaal: Signalen met slechts twee mogelijke toestanden: hoog (HIGH) of laag (LOW), oftewel aan of uit.
- Gebruik: Digitale signalen worden gebruikt om apparaten zoals LED's en knoppen te bedienen of uit te lezen.
Werken met LED's (Digitale Outputs)
LED aansluiten:
- Componenten: LED, 220Ω weerstand, breadboard, jumper wires.
- Aansluiting:
- Verbind de anode (+, lange poot) van de LED via de weerstand met digitale pin 9 van de Arduino.
- Verbind de kathode (-, korte poot) van de LED met de GND (ground) van de Arduino.
Code om LED te laten branden:
void setup() {
pinMode(9, OUTPUT); // Zet pin 9 als output
}
void loop() {
digitalWrite(9, HIGH); // Zet pin 9 hoog (LED aan)
}
Werken met een knop
Knop aansluiten:
- Componenten: Drukknop, 10kΩ weerstand (pull-down), breadboard, jumper wires.
- Aansluiting:
- Verbind één kant van de knop met 5V.
- Verbind de andere kant van de knop met digitale pin 7 en met een 10kΩ weerstand naar GND.
Code om knop uit te lezen:
void setup() {
pinMode(7, INPUT); // Zet pin 7 als input
pinMode(9, OUTPUT); // LED pin
}
void loop() {
int knopStatus = digitalRead(7); // Lees de status van de knop
if (knopStatus == HIGH) {
digitalWrite(9, HIGH); // Zet LED aan
} else {
digitalWrite(9, LOW); // Zet LED uit
}
}
Uitleg van de Code
- pinMode(): Stelt de pin in als INPUT of OUTPUT.
- digitalRead(): Leest de status van een digitale inputpin (HIGH of LOW).
- digitalWrite(): Zet een digitale outputpin op HIGH of LOW.
- if-else structuur: Bepaalt welk deel van de code wordt uitgevoerd op basis van een voorwaarde.
Opbouw van de Schakeling
- Zorg ervoor dat alle verbindingen stevig zijn.
- Controleer of de weerstand op de juiste plaats zit om kortsluiting te voorkomen.
- Gebruik een schema als referentie.
Veelgemaakte Fouten
- Verkeerde aansluiting van de LED: Let op de anode en kathode.
- Weerstand vergeten: Dit kan leiden tot het doorbranden van de LED.
- Pull-down weerstand missen: Zonder deze kan de input "zweven" en onvoorspelbaar gedrag vertonen.
Veiligheidstips
- Controleer altijd je schakeling voordat je de stroom inschakelt.
- Gebruik de juiste weerstandswaarden om componenten te beschermen.
- Raak de Arduino niet aan op plekken waar spanning aanwezig is tijdens gebruik.