Wie man ein 4x4-Soft-Keypad mit Arduino verwendet
In diesem Tutorial werden wir erkunden, wie man ein 4x4-Soft-Keypad mit einem Arduino anschließt und verwendet. Dieses Keypad verfügt über sechzehn Tasten, benötigt aber nur acht Pins für die Verbindung und ist damit ein kompaktes und effizientes Eingabegerät für verschiedene Projekte. Am Ende dieser Anleitung wirst du Eingaben vom Keypad lesen und Aktionen basierend auf diesen Eingaben auslösen können.

Wir werden das nutzen.KeypadBibliothek zur Anbindung an das Tastenfeld, die es uns ermöglicht, leicht zu erkennen, welche Taste gedrückt wurde. Das Programm, das wir implementieren werden, zeigt die gedrückte Taste im seriellen Monitor an und führt eine Aktion aus, wenn eine bestimmte Taste gedrückt wird, zum Beispiel die Taste '4'. Für eine bessere visuelle Anleitung solltest du unbedingt das Video ansehen (im Video bei 00:00).
Hardware erklärt
Die Hauptkomponente dieses Projekts ist das 4x4-Soft-Keypad, das aus 16 Tasten besteht, die in einem Gitter angeordnet sind. Jede Taste ist an einen bestimmten Pin des Arduino angeschlossen, sodass dieser erkennen kann, wenn eine Taste gedrückt wird. Das Keypad arbeitet mit einer Matrix-Scanning-Methode, bei der die Reihen und Spalten nacheinander aktiviert werden, um festzustellen, welche Taste gedrückt wurde.
Um das Tastenfeld anzuschließen, müssen Sie acht digitale Pins am Arduino verwenden. Die Reihen werden typischerweise an die Pins 2 bis 5 angeschlossen, die Spalten an die Pins 6 bis 9. Diese Anordnung ermöglicht es dem Arduino, den Zustand jeder Taste effektiv zu lesen.
Datenblattdetails
| Breite | 69 mm |
|---|---|
| Länge | 76 mm |
| Kabellänge | 84 mm |
| Steckverbinderbreite | 20 mm |
| Abstand der Anschlusslöcher | 2,56 mm |
- Stellen Sie sicher, dass die Reihen- und Spaltenpins korrekt verdrahtet sind, um Fehlablesungen zu vermeiden.
- Verwenden Sie Pull-up-Widerstände, falls erforderlich, um die Eingangsmesswerte zu stabilisieren.
- Entprellen Sie Tasten in der Software, um mehrfaches Auslesen bei einem einzelnen Tastendruck zu vermeiden.
- Testen Sie jede Taste einzeln, um die Funktionalität sicherzustellen.
- Halten Sie das Tastenfeld trocken und sauber, um die Leistung zu erhalten.
Verdrahtungsanleitung

Um das 4x4-Tastenfeld an den Arduino anzuschließen, verbinden Sie die Reihenpins des Tastenfelds wie folgt mit den digitalen Pins des Arduino: Verbinden Sie die erste Reihe mit Pin2, die zweite Reihe festzustecken3, die dritte Reihe zum Anheften4, und die vierte Reihe zum Anpinnen5. Für die Spaltenpins verbinden Sie die erste Spalte mit Pin6, die zweite Spalte zum Anheften7, die dritte Spalte anzupinnen8, und die vierte Spalte anheften9.
Diese Konfiguration ermöglicht es dem Arduino, die Reihen und Spalten effizient abzutasten. Überprüfen Sie die Verbindungen unbedingt noch einmal, damit jeder Pin korrekt der vorgesehenen Reihe oder Spalte zugeordnet ist. Im Video werden alternative Verdrahtungskonfigurationen kurz besprochen (im Video bei 01:15). Wenn Sie anders verkabeln, aktualisieren Sie einfach die Pinnummern im Code entsprechend.
Codebeispiele & Schritt-für-Schritt-Anleitung
Im Code beginnen wir damit, dieKeypadBibliothek und Festlegung des Layouts des Tastenfelds. Die Zeilen und Spalten werden mit Arrays eingerichtet, wobeirowPinswird den digitalen Pins zugeordnet, die mit den Reihen undcolPinswird den Spalten zugeordnet.
const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};In diesem Ausschnitt legen wir die Anzahl der Reihen und Spalten sowie die Tastenbelegung fest. Diese Konfiguration ist entscheidend, um festzustellen, welche Taste gedrückt wurde, anhand der aktivierten Reihe und Spalte.
void setup(){
Serial.begin(9600);
}DersetupDie Funktion initialisiert die serielle Kommunikation mit 9600 Baud. Das ist wichtig, um Tastendruckdaten zum Debuggen und zur Überprüfung an den seriellen Monitor zu senden.
void loop(){
char key = keypad.getKey();
if (key){
Serial.println(key);
}
if (key =='4'){
Serial.println("Key 4 is pressed");
}
}ImloopIn der Funktion prüfen wir kontinuierlich, ob eine Taste gedrückt ist, indem wirkeypad.getKey(). Wenn eine Taste gedrückt wird, wird der Tastenwert im seriellen Monitor ausgegeben. Zusätzlich wird, wenn die Taste '4' gedrückt wird, eine spezifische Meldung ausgegeben, die anzeigt, dass die Taste '4' aktiviert wurde. Dieser Abschnitt des Codes ermöglicht eine Interaktion in Echtzeit basierend auf der Benutzereingabe.
Demonstration / Was Sie erwartet
Sobald alles eingerichtet ist und der Code auf Ihr Arduino hochgeladen wurde, sollten die gedrückten Tasten im Serial Monitor angezeigt werden. Wenn Sie die Taste '4' drücken, erscheint die Meldung "Taste 4 ist gedrückt", die bestätigt, dass der Eingang erfolgreich erkannt wurde. Achten Sie auf häufige Fallstricke wie schwebende Eingänge oder falsche Verdrahtung, die zu fehlerhaften Messwerten führen können (im Video bei 02:30).
Video-Zeitstempel
- 00:00- Einführung in das Tastenfeld
- 01:15- Verdrahtungsanleitung
- 02:30- Erklärung und Demonstration des Codes
Dinge, die Sie vielleicht brauchen
-
AmazonPurchase 4x4 keypad from Amazonamzn.to
-
AliExpressPurchase soft keypad from Aliexpresss.click.aliexpress.com
Ressourcen & Referenzen
Noch keine Ressourcen vorhanden.