Je leert hoe je een Arduino kunt gebruiken als een keyboard dat tonen speelt via een speaker of buzzer als je op knoppen drukt.
1 Arduino UNO
3 drukknoppen
3 Weerstanden van 10kΩ (pull-down weerstanden)
1 Buzzer of speaker
Jumper wires
Breadboard
1. Verbind drie knoppen:
2. Knop 1 met pin 3
3. Knop 2 met pin 2
4. Knop 3 met pin 1
5. Gebruik voor elke knop een 10kΩ weerstand naar GND.
6. Verbind het plus (+) pootje van de buzzer met pin 8.
7. Verbind het min (-) pootje van de buzzer met GND.
Klik op de Code-knop , kopieer en plakt onderstaande code in Tinkercad
const int knop1 = 3; // knop 1 is aangesloten op pin 3
const int knop2 = 2; // knop 2 is aangesloten op pin 2
const int knop3 = 1; // knop 3 is aangesloten op pin 1
const int speaker = 8; // speaker of buzzer zit op pin 8
const int toon1 = 262; // frequentie voor de noot C4 (262 Hz)
const int toon2 = 294; // frequentie voor de noot D4 (294 Hz)
const int toon3 = 330; // frequentie voor de noot E4 (330 Hz)
int toestandknop1 = 0; // variabele om te onthouden of knop1 is ingedrukt
int toestandknop2 = 0; // variabele om te onthouden of knop2 is ingedrukt
int toestandknop3 = 0; // variabele om te onthouden of knop3 is ingedrukt
void setup() {
pinMode(knop1, INPUT); // zet pin 3 als input voor knop 1
pinMode(knop2, INPUT); // zet pin 2 als input voor knop 2
pinMode(knop3, INPUT); // zet pin 1 als input voor knop 3
pinMode(speaker, OUTPUT); // zet pin 8 als output voor de speaker
}
void loop() {
toestandknop1 = digitalRead(knop1); // lees of knop 1 is ingedrukt (HIGH of LOW)
toestandknop2 = digitalRead(knop2); // lees of knop 2 is ingedrukt
toestandknop3 = digitalRead(knop3); // lees of knop 3 is ingedrukt
if (toestandknop1 == HIGH) { // als knop 1 is ingedrukt
tone(speaker, toon1); // speel toon1 (C4) op de speaker
} else if (toestandknop2 == HIGH) { // anders, als knop 2 is ingedrukt
tone(speaker, toon2); // speel toon2 (D4)
} else if (toestandknop3 == HIGH) { // anders, als knop 3 is ingedrukt
tone(speaker, toon3); // speel toon3 (E4)
} else { // als geen enkele knop is ingedrukt
noTone(speaker); // stop het geluid, speaker blijft stil
}
}
Klik op Start simulatie.
Druk op de knoppen en luister naar de verschillende tonen.
Sla je ontwerp op in Tinkercad onder de naam : Les 5.3: Keyboard met 3 knoppen.