Arduino - Tastaturfeld - Buzzer

In diesem Tutorial lernen wir, wie man Arduino und einen Piezo-Summer verwendet, um jedes Mal, wenn eine Taste auf dem Tastenfeld gedrückt wird, einen Piepton zu erzeugen.

Erforderliche Hardware

1×Arduino Uno R3
1×USB 2.0 Kabel Typ A/B (für USB-A PC)
1×USB 2.0 Kabel Typ C/B (für USB-C PC)
1×Tastenfeld
1×3-24V Aktiver Piezo-Summer
1×Aktiver Piezo-Summer-Modul
1×Passiver Piezo-Summer-Modul
1×Breadboard
1×Verbindungskabel
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V3 Starter-Kit (Arduino enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über Tastaturfeld und Piezo-Buzzer

Wenn Sie nichts über Tastaturfeld und Buzzer (Pinbelegung, Funktionsweise, Programmierung ...) wissen, informieren Sie sich in den folgenden Tutorials darüber:

Die ezBuzzer-Bibliothek ist darauf ausgelegt, dass ein Buzzer piept oder eine Melodie abspielt, ohne den restlichen Code zu blockieren.

Verdrahtungsdiagramm

Arduino-Tastatur-Buzzer-Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Arduino-Code

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino/arduino-keypad-buzzer */ #include <Keypad.h> #include <ezBuzzer.h> #define BUZZER_PIN A0 #define ROW_NUM 4 // four rows #define COLUMN_NUM 3 // three columns char keys[ROW_NUM][COLUMN_NUM] = { {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'} }; byte pin_rows[ROW_NUM] = {9, 8, 7, 6}; // connect to the row pinouts of the keypad byte pin_column[COLUMN_NUM] = {5, 4, 3}; // connect to the column pinouts of the keypad Keypad keypad = Keypad( makeKeymap(keys), pin_rows, pin_column, ROW_NUM, COLUMN_NUM ); ezBuzzer buzzer(BUZZER_PIN); // create ezBuzzer object that attach to a pin void setup() { Serial.begin(9600); } void loop() { buzzer.loop(); // MUST call the buzzer.loop() function in loop() char key = keypad.getKey(); if (key) { Serial.print(key); // prints key to serial monitor buzzer.beep(200); // generates a 200ms short sound } }

Schnelle Schritte

  • Schließe Arduino über ein USB-Kabel an den PC an.
  • Öffne die Arduino-IDE, wähle das richtige Board und den richtigen Port aus.
  • Navigiere zum Bibliotheken-Symbol in der linken Leiste der Arduino-IDE.
  • Suche im „keypad“, und finde dann die keypad-Bibliothek von Mark Stanley und Alexander Brevig.
  • Klicke auf die Installieren-Schaltfläche, um die keypad-Bibliothek zu installieren.
Arduino-Keypad-Bibliothek
  • Suchen Sie nach „ezBuzzer“, dann finden Sie die Buzzer-Bibliothek von ArduinoGetStarted
  • Klicken Sie auf die Schaltfläche Installieren, um die ezBuzzer-Bibliothek zu installieren.
Arduino-Buzzer-Bibliothek
  • Kopieren Sie den obigen Code und öffnen Sie ihn mit der Arduino IDE
  • Klicken Sie in der Arduino IDE auf die Hochladen-Schaltfläche, um den Code auf den Arduino hochzuladen
Code in der Arduino-IDE hochladen
  • Drücken Sie einige Tasten auf dem Tastenfeld
  • Hören Sie das Piepen und sehen Sie das Ergebnis im Serial Monitor

Code-Erklärung

Lies die Zeile-für-Zeile-Erklärung in den Kommentarzeilen des Quellcodes!

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!