Passer au contenu principal Passer à la recherche Passer à la navigation principale
Menu

Piloter un clavier 4x4 avec Arduino


Ici, nous vous montrons comment utiliser un clavier 4x4 avec un Arduino.

Les claviers ou pavés tactiles sont parfaits pour la saisie de données ou la navigation dans les menus de projets tels que les systèmes de sécurité, les contrôles d'accès, les systèmes embarqués, les commandes domotiques, les télécommandes et les robots. Les possibilités d'utilisation sont illimitées, car les touches ne doivent pas nécessairement produire les caractères imprimés, mais peuvent être librement programmées à l'aide d'un Arduino ou d'un Raspberry Pi. Les claviers 4x3 ou 4x4, similaires à un clavier téléphonique classique, sont les plus populaires.



Composant nécessaire

  • Carte Arduino 
  • Câble USB 
  • Clavier 4x4 
  • 8 câbles de connexion

Ignorer la galerie de produits
20
yourDroid UNO R3 carte de développement ATMEGA328P-PU compatible arduino yourDroid UNO R3 carte de développement ATMEGA328P-PU compatible arduino – Image 2

Note moyenne de 5 sur 5 étoiles

(6)
yourDroid UNO R3 carte de développement ATMEGA328P-PU compatible arduino
RBS14165

Disponible immédiatement

Prix de vente : A partir de 10,12 € Prix régulier : 12,65 €
Câble USB 2.0 USB-A vers USB-B 30 cm

Note moyenne de 0 sur 5 étoiles

Câble USB 2.0 USB-A vers USB-B 30 cm
RBS12341

Disponible immédiatement

Prix régulier : A partir de 0,75 €
Clavier à membrane avec 16 touches Clavier à membrane avec 16 touches – Image 2

Note moyenne de 5 sur 5 étoiles

(1)
Clavier à membrane avec 16 touches
RBS10037

Disponible immédiatement

Prix régulier : A partir de 1,21 €
Kit de 65 câbles jumper

Note moyenne de 4.9 sur 5 étoiles

(5)
Kit de 65 câbles jumper
RBS10023

Disponible immédiatement

Prix régulier : A partir de 1,59 €

Caractéristiques techniques du clavier 4x4

  • Circuit électrique maximal : 35V CC, 30mA
  • Température de fonctionnement : -20 ~ +40°C
  • Type de connexion : 8 broches
  • Longueur totale : 160 mm
  • Longueur du câble (y compris les connecteurs) : 88 mm
  • Surface adhésive au dos
  • Dimensions : 69x76 mm, env. 1 mm de hauteur

Description

Les pavés tactiles ou claviers sont parfaits pour la saisie de données ou la navigation dans les menus de projets tels que les systèmes de sécurité, les contrôles d'accès, les systèmes embarqués, les commandes domotiques, les télécommandes et les robots. Les possibilités d'utilisation sont illimitées, car les touches ne doivent pas nécessairement produire les caractères imprimés, mais peuvent être librement programmées à l'aide d'un Arduino ou d'un Raspberry Pi. Les claviers 4x3 ou 4x4, similaires à un clavier téléphonique classique, sont les plus populaires.

Fonctionnement

Le pavé numérique est composé de 16 touches disposées en matrice, c'est-à-dire que toutes les touches d'une colonne sont connectées à une entrée et toutes les touches d'une ligne à une autre.

Lorsque vous appuyez sur une touche, l'entrée correspondante de la ligne est connectée à celle de la colonne, fermant ainsi le circuit électrique. L'avantage de cette configuration est que 16 touches peuvent être contrôlées avec seulement 8 entrées du microcontrôleur.

Schéma électronique

cliquez sur les images pour agrandir


Schéma de connexion

Clavier
Arduino
R1Pin 9
R2Pin 8
R3Pin 7
R4Pin 6
C1Pin 5
C2Pin 4
C3Pin 3
C4Pin 2


Code pour Arduino

Pour utiliser cet exemple de code, vous avez besoin de la bibliothèque Keypad.h.

Avec cet exemple, vous pouvez appuyer sur une touche et lire la touche enfoncée dans le moniteur série de l'IDE Arduino. Code à télécharger.

Afficher / masquer le code
#include "Arduino.h"
#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}; // broches pour les lignes
byte colPins[COLS] = {5,4,3,2}; // broches pour les colonnes

Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup() {
  Serial.begin(9600);
}

void loop() {
  char key = keypad.getKey();

  if (key != NO_KEY) {
    Serial.println(key);
  }
}