fbpx

Clavier 4×4 matrix noir 16 boutons

Availability:

En stock


Clavier 4×4 matrix noir 16 boutons , à fixation par vis. Sortie sur connecteur au pas de 2.54 mm.

22.500 TND

En stock

84 / 100

Clavier 4×4 matrix noir 16 boutons

Clavier 16 touches matricielles, à fixation par vis. Sortie sur connecteur au pas de 2.54 mm.

Pouvoir de coupure: 20 mA/24 Vcc.
Dimensions : 64 x 69 mm.

Comment utiliser :

J’ai un clavier à 16 touches qui ressemble beaucoup à celui ci, sur Didactico. Je fais un essai pour voir si j’arrive à en lire les touches lorsque je le connecte à un arduino Uno.

  1. Identification des broches
  2. Connexion à l’Arduino
  3. Sketch

 

  1. Identification des broches

keypad pour arduino

le clavier présente 10 connecteurs mais il suffit de souder les 8 du milieu.

Ensuite, avec un multimètre réglé sur 2KΩ, on regarde quels fils se connectent lorsqu’on appuie sur une touche.

Numéroter les broches de 1 à 8 : de droite à gauche lorsqu’on voit le clavier.

 

 

 

 

Le clavier est matriciel : chaque touche correspond à une colonne et une ligne que j’ai numéroté arbitrairement comme dans ce schéma :

clavier matriciel arduino

Pour savoir quelle broche est connectée à quelle colonne ou ligne, il faut déterminer quels sont les associations de broches qui entrent en contact lorsqu’on appuie sur une touche. Ainsi si j’appuie sur 1, en voyant quelles broches entrent en contact, je déterminerai que l’une des deux est “row 1” et l’autre est “col 1”.

J’ai déterminé que la broche 7 et la broche 4 sont connectées lorsque j’appuie sur la touche 2. J’ai continué jusqu’à ce que j’ai assez d’informations pour identifier le rôle de chaque broche.

broche broche touche
7 4 2
7 3 5
7 2 8
7 1 0
8 1 *
6 1 #
1 1 D

J’en ai donc déduit que les broches correspondent à :

broche broche
1 Row 4
2 Row 3
3 Row  2
4 Row 1
5 Col 4
6 Col 3
7 Col 2
8 Col 1

2. Connexion à l’Arduino

test arduino et keypad

broche broche arduino
1 Row 4 8
2 Row 3 9
3 Row  2 10
4 Row 1 11
5 Col 4 4
6 Col 3 5
7 Col 2 6
8 Col 1 7

3. Sketch

La bibliothèque keypad.h permet de gérer facilement un tel clavier matriciel.

Ce sketch lit correctement chaque touche appuyée et l’affiche dans la console série :

#include <Keypad.h>

const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
//define the cymbols on the buttons of the keypads
char keys[ROWS][COLS] = {
  {'1', '2', '3', 'A'},
  {'4', '5', '6', 'B'},
  {'7', '8', '9', 'C'},
  {'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {11, 10, 9, 8}; //rows 1 to 4
byte colPins[COLS] = {7, 6, 5, 4}; //columns 4 to 1

//initialize an instance of class NewKeypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS); 

void setup(){
  Serial.begin(9600);
  Serial.println("Setup done");
}

Si j’appuie sur les touches 1, 2, 3, A, 4, 5, 6, B, 7, 8, 9, C, *, 0, # puis D, j’obtiens l’affichage suivant dans la console série.

Setup done
key : 1
key : 2
key : 3
key : A
key : 4
key : 5
key : 6
key : B
key : 7
key : 8
key : 9
key : C
key : *
key : 0
key : #
key : D

Tout fonctionne donc parfaitement.

  • Sources

https://playground.arduino.cc/Code/Keypad/

UGS : DCD-03-A52 Catégorie :
84 / 100

Pouvoir de coupure: 20 mA/24 Vcc.
Dimensions : 64 x 69 mm.