Description
Keypad – Clavier Matricé 4×4 16 Boutons
Le clavier matricé 4×4 16 boutons est un périphérique d’entrée composé de 16 boutons disposés en une grille de 4 lignes et 4 colonnes. Lorsqu’une touche est pressée, elle connecte une ligne à une colonne, permettant ainsi de détecter quelle touche a été activée. Ce clavier est idéal pour les projets nécessitant une interface utilisateur avec plusieurs options de saisie, tels que les systèmes de sécurité, les systèmes de contrôle d’accès et les projets d’automatisation.
Caractéristiques détaillées
- Configuration: 4 lignes x 4 colonnes
- Nombre de touches: 16
- Tension de fonctionnement: 5V DC
- Type de contact: Membrane
- Dimensions: 70mm x 77mm
- Interface: 8 broches (4 lignes, 4 colonnes)
- Durée de vie: Jusqu’à 1 million de pressions par touche
Fonctionnement
Le clavier fonctionne en scannant les lignes et les colonnes pour détecter quelles touches sont pressées. Lorsque vous appuyez sur une touche, une ligne est connectée à une colonne, permettant ainsi au microcontrôleur de détecter la touche pressée. Le processus de balayage est généralement géré par une bibliothèque dans les environnements de développement tels qu’Arduino.
Applications
- Systèmes de sécurité: Saisie de codes pour le contrôle d’accès.
- Automatisation: Interfaces utilisateur pour machines ou systèmes domotiques.
- Prototypage électronique: Utilisé dans divers projets de développement nécessitant une entrée utilisateur.
Comment l’utiliser avec Arduino Uno
Pour utiliser ce clavier avec une carte Arduino Uno, vous aurez besoin des composants suivants :
- 1 x Clavier matricé 4×4 16 touches
- 1 x Arduino Uno
- Fils de connexion
- Breadboard
Instructions de connexion:
- Connexion du clavier: Connectez les 8 broches du clavier aux broches numériques de l’Arduino (par exemple, 2 à 9).
- Utilisation de la bibliothèque Keypad:
- Installez la bibliothèque Keypad dans l’IDE Arduino.
- Utilisez le code ci-dessous pour lire les entrées du clavier.
Exemple de code Arduino Uno:
#include <Keypad.h>
const byte ROWS = 4; // quatre lignes
const byte COLS = 4; // quatre colonnes
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; // Connecté aux pins des lignes du clavier
byte colPins[COLS] = {5, 4, 3, 2}; // Connecté aux pins des colonnes du clavier
Keypad clavier = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup() {
Serial.begin(9600);
}
void loop() {
char key = clavier.getKey();
if (key) {
Serial.println(key);
}
}
Explication détaillée du code
- Bibliothèque Keypad: Le code inclut la bibliothèque Keypad qui facilite la gestion des claviers matricés. Vous devez installer cette bibliothèque dans l’IDE Arduino avant de l’utiliser.
- Déclaration des lignes et colonnes: Les constantes
ROWS
etCOLS
définissent le nombre de lignes et de colonnes du clavier. Le tableaukeys
contient les caractères associés à chaque touche du clavier. - Pins des lignes et colonnes: Les tableaux
rowPins
etcolPins
spécifient les pins de l’Arduino auxquelles les lignes et les colonnes du clavier sont connectées. - Initialisation du clavier: L’objet
Keypad
est créé en utilisant le mappage des touches (makeKeymap
), les pins des lignes et des colonnes, et les dimensions du clavier (lignes et colonnes). - Configuration de la communication série: La fonction
setup()
initialise la communication série à 9600 baud pour permettre l’affichage des touches pressées sur le moniteur série. - Lecture des touches: Dans la boucle principale (
loop()
), la méthodegetKey()
de l’objetKeypad
est utilisée pour lire la touche pressée. Si une touche est pressée (if (key)
), son caractère est affiché sur le moniteur série à l’aide deSerial.println(key)
.
Brochage
- L1 – L4: Connectées aux broches numériques (ex. 9 à 6) pour les lignes.
- C1 – C4: Connectées aux broches numériques (ex. 5 à 2) pour les colonnes.