Arduino - Clavier 1x4

Dans ce tutoriel, nous apprendrons comment utiliser un clavier 1x4 avec un Arduino. Plus en détail, nous apprendrons :

Clavier Arduino 1x4

Préparation du matériel

1×Arduino Uno R3
1×Câble USB 2.0 type A/B (pour PC USB-A)
1×Câble USB 2.0 type C/B (pour PC USB-C)
1×Clavier 1x4
1×Fils de connexion
1×Recommandé: Shield à bornier à vis pour Arduino Uno
1×Recommandé: Shield plaque d'essai pour Arduino Uno
1×Recommandé: Boîtier pour Arduino Uno
1×Recommandé: Kit plaque de base prototypage et plaque d'essai pour Arduino Uno

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables STEM V3 (Arduino inclus)
1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos de Keypad 1x4

Un clavier 1x4 est composé de quatre boutons à membrane disposés en une seule rangée. Il est couramment utilisé pour la saisie de l'utilisateur dans des projets tels que l'entrée de code, la navigation dans les menus ou les interfaces de contrôle.

Brochage

Le clavier 1x4 possède 5 broches, qui ne correspondent pas directement aux étiquettes des touches dans l'ordre. Plus précisément :

  • Broche 1 : connecte à la touche 2
  • Broche 2 : connecte à la touche 1
  • Broche 3 : connecte à la touche 4
  • Broche 4 : connecte à la touche 3
  • Broche 5 : est une broche commune qui connecte à toutes les touches
Configuration des broches du clavier 1x4
image source: diyables.io

Diagramme de câblage

Schéma de câblage du clavier Arduino 1x4

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Code Arduino

Chaque touche du pavé numérique 1x4 fonctionne comme un bouton. Cela signifie que nous pouvons utiliser la fonction digitalRead() pour vérifier l'état de chaque touche. Cependant, en pratique, comme avec n'importe quel bouton, nous devons gérer le problème du rebondissement, où une seule pression pourrait être détectée à tort comme plusieurs pressions. Pour éviter cela, nous devons anti-rebondir chaque touche. Cette tâche devient difficile lorsqu'on essaie d'anti-rebondir quatre touches sans bloquer d'autres parties du code. Heureusement, la bibliothèque ezButton simplifie ce processus.

#include <ezButton.h> #define KEY_NUM 4 // the number of keys #define PIN_KEY_1 3 // The Arduino pin connected to the key 1 #define PIN_KEY_2 2 // The Arduino pin connected to the key 2 #define PIN_KEY_3 5 // The Arduino pin connected to the key 3 #define PIN_KEY_4 4 // The Arduino pin connected to the key 4 ezButton keypad_1x4[] = { ezButton(PIN_KEY_1), ezButton(PIN_KEY_2), ezButton(PIN_KEY_3), ezButton(PIN_KEY_4) }; void setup() { Serial.begin(9600); for (byte i = 0; i < KEY_NUM; i++) { keypad_1x4[i].setDebounceTime(100); // set debounce time to 100 milliseconds } } void loop() { int key = getKeyPressed(); if (key) { Serial.print("The key "); Serial.print(key); Serial.println(" is pressed"); } } int getKeyPressed() { for (byte i = 0; i < KEY_NUM; i++) keypad_1x4[i].loop(); // MUST call the loop() function first for (byte i = 0; i < KEY_NUM; i++) { // get key state after debounce int key_state = keypad_1x4[i].getState(); // the state after debounce if (keypad_1x4[i].isPressed()) return (i + 1); } return 0; }

Étapes rapides

  • Connectez Arduino au clavier 1x4
  • Connectez Arduino au PC via un câble USB
  • Ouvrez l'IDE Arduino, sélectionnez la bonne carte et le bon port
  • Naviguez vers l'icône Libraries sur la barre de gauche de l'IDE Arduino.
  • Recherchez “ezButton”, puis trouvez la bibliothèque de boutons par ArduinoGetStarted.com
  • Cliquez sur le bouton Install pour installer la bibliothèque ezButton.
Bibliothèque de boutons Arduino
  • Copiez le code ci-dessus et ouvrez-le avec Arduino IDE.
  • Cliquez sur le bouton Upload dans Arduino IDE pour téléverser le code sur Arduino.
  • Ouvrez le Moniteur Série.
  • Appuyez sur les touches du clavier 1x4 une par une.
  • Voyez le résultat dans le Moniteur Série.
COM6
Send
1 2 3 4
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !