Promo !

Clavier Matriciel 4×4 16 touches pour Arduino

Le prix initial était : 5,15 €.Le prix actuel est : 2,69 €. Hors TVA

Clavier Matriciel 4×4 16 touches pour Arduino

35 en stock (peut être commandé)

Domande su questo prodotto? Scrivi a Lana su WhatsApp

Catégorie :

Description

📦 Description complète du module Clavier Matriciel 4×4 (Clavier 4×4) Le Clavier Matriciel 4×4 est un module d’entrée composé de 16 touches disposées sur une matrice de 4 lignes et 4 colonnes (4×4), pour un total de 16 combinaisons possibles de touches : 0-9, A-D, *, #. ✅ Caractéristiques techniques : Nombre de touches : 16 (4 lignes × 4 colonnes) Disposition typique des touches : [ 1 ] [ 2 ] [ 3 ] [ A ] [ 4 ] [ 5 ] [ 6 ] [ B ] [ 7 ] [ 8 ] [ 9 ] [ C ] [ * ] [ 0 ] [ # ] [ D ] Interface : 8 broches digitales (4 pour les lignes, 4 pour les colonnes) Tension d’exploitation : 3.3V – 5V Type de connexion : connecteurs à pas de 2,54 mm Compatibilité : Arduino, ESP32, ESP8266, Raspberry Pi, et microcontrôleurs en général Matériel : plastique et circuit flexible 📚 Fonctionnement Le module fonctionne par la lecture de lignes et de colonnes. En appuyant sur une touche, un contact électrique est créé entre une ligne et une colonne. Arduino peut ainsi déterminer quelle touche a été pressée en lisant l’état des broches. 🔌 Connexion avec Arduino Le module a 8 broches : [ R1, R2, R3, R4, C1, C2, C3, C4 ] Exemple de connexion avec Arduino UNO : Clavier 4×4 Arduino UNO R1 D9 R2 D8 R3 D7 R4 D6 C1 D5 C2 D4 C3 D3 C4 D2 📦 Bibliothèque nécessaire Pour gérer facilement le clavier, il est recommandé d’utiliser la bibliothèque Keypad.h, qui permet la lecture automatique des touches. 🔧 Installation de la bibliothèque Keypad : Ouvrez l’IDE Arduino Allez dans Sketch > Include Library > Manage Libraries Recherchez

Description complète (original italien)

La description complète est affichée ci-dessous en italien, le temps de terminer la traduction française.

📦 Descrizione Completa del Modulo Tastiera Matriciale 4×4 (Keypad 4×4)

La Tastiera Matriciale 4×4 è un modulo di input composto da 16 tasti disposti su una matrice di 4 righe e 4 colonne (4×4), per un totale di 16 possibili combinazioni di tasti: 0-9, A-D, *, #.

✅ Caratteristiche tecniche:

  • Numero di tasti: 16 (4 righe × 4 colonne)
  • Layout tipico dei tasti:
    [ 1 ] [ 2 ] [ 3 ] [ A ]  
    [ 4 ] [ 5 ] [ 6 ] [ B ]  
    [ 7 ] [ 8 ] [ 9 ] [ C ]  
    [ * ] [ 0 ] [ # ] [ D ]  
    
  • Interfaccia: 8 pin digitali (4 per le righe, 4 per le colonne)
  • Tensione operativa: 3.3V – 5V
  • Tipo di connessione: intestazioni pin a passo 2.54mm
  • Compatibilità: Arduino, ESP32, ESP8266, Raspberry Pi, e microcontrollori in generale
  • Materiale: plastica e circuito flessibile

📚 Funzionamento

Il modulo funziona attraverso la scansione di righe e colonne. Premendo un tasto, si crea un collegamento elettrico tra una riga e una colonna. Arduino può così determinare quale tasto è stato premuto leggendo lo stato dei pin.


🔌 Collegamento con Arduino

Il modulo ha 8 pin:

[ R1, R2, R3, R4, C1, C2, C3, C4 ]

Esempio di collegamento con Arduino UNO:

Tastiera 4×4 Arduino UNO
R1 D9
R2 D8
R3 D7
R4 D6
C1 D5
C2 D4
C3 D3
C4 D2

📦 Libreria necessaria

Per gestire facilmente la tastiera, si consiglia l’uso della libreria Keypad.h, che permette la scansione automatica dei tasti.

🔧 Installazione libreria Keypad:

  1. Apri l’IDE di Arduino
  2. Vai su Sketch > Include Library > Manage Libraries
  3. Rechercher « Keypad » di Mark Stanley e Alexander Brevig
  4. Clicca su Install

🧪 Esempio di codice

#include <Keypad.h>

// Definizione righe e colonne
const byte ROWS = 4;
const byte COLS = 4;

// Mappa dei tasti sulla tastiera
char keys[ROWS][COLS] = {
  { '1', '2', '3', 'A' },
  { '4', '5', '6', 'B' },
  { '7', '8', '9', 'C' },
  { '*', '0', '#', 'D' }
};

// Pin di connessione tra tastiera e Arduino
byte rowPins[ROWS] = {9, 8, 7, 6}; // Righe → D9, D8, D7, D6
byte colPins[COLS] = {5, 4, 3, 2}; // Colonne → D5, D4, D3, D2

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

void setup() {
  Serial.begin(9600);
  Serial.println("Tastiera pronta");
}

void loop() {
  char key = keypad.getKey();
  
  if (key) {
    Serial.print("Tasto premuto: ");
    Serial.println(key);
  }
}

🧭 Guida alla programmazione

📌 Funzioni utili della libreria Keypad:

Funzione Descrizione
getKey() Ritorna il tasto premuto o NO_KEY se nessuno
isPressed(char k) Ritorna true se il tasto k è premuto
waitForKey() Blocca il programma finché non viene premuto un tasto
addEventListener(fn) Permette di registrare una funzione da eseguire al cambio stato
setDebounceTime(ms) Imposta il tempo di debounce
setHoldTime(ms) Imposta il tempo per considerare un tasto « tenuto premuto »

🧩 Esempi di utilizzo avanzato

1. Sblocco con codice segreto

#define PASSWORD "1234"
String input = "";

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

  if (key) {
    input += key;
    Serial.println(input);
    
    if (input.length() == 4) {
      if (input == PASSWORD) {
        Serial.println("Accesso consentito");
      } else {
        Serial.println("Codice errato");
      }
      input = ""; // reset input
    }
  }
}

2. Controllo menu con tasti A-D

void loop() {
  char key = keypad.getKey();
  if (key) {
    switch (key) {
      case 'A':
        Serial.println("Opzione: Accensione");
        break;
      case 'B':
        Serial.println("Opzione: Spegnimento");
        break;
      case 'C':
        Serial.println("Opzione: Reset");
        break;
      case 'D':
        Serial.println("Opzione: Info");
        break;
      default:
        Serial.print("Tasto generico: ");
        Serial.println(key);
    }
  }
}

🔍 Suggerimenti

  • Debounce automatico: la libreria gestisce già il rimbalzo dei tasti.
  • Stato continuo: getKey() restituisce solo una volta il tasto premuto; per tenuta prolungata, usare getState() o isPressed().
  • Pull-up/pull-down: non servono resistenze esterne, la tastiera agisce da contatto meccanico.
  • Multifunzione: puoi usare la tastiera per navigare menu, inserire codici o controllare dispositivi.

🧾 Conclusione

La tastiera 4×4 è uno strumento semplice ma molto utile per sistemi embedded come Arduino. Grazie alla libreria Keypad, la gestione dei tasti diventa molto intuitiva, permettendo lo sviluppo rapido di interfacce utente per progetti come:

  • Sistemi di allarme
  • Blocchi numerici
  • Interfacce di menu
  • Serrature elettroniche
  • Controlli remoti

Tutorial: Come usare Tastiera Matrix 4×4

La tastiera matrix 4×4 è un componente utile per progetti di interattività e input digitale. Ideale per principianti che desiderano creare interfacce semplici o piccoli giochi.

Cosa serve

  • Arduino Uno
  • Cavo USB A-MicroB
  • Tastiera Matrix 4×4

Passi

  1. Collega i pin di input della tastiera (R1-R4) a quattro porte digitali dell’Arduino.
  2. Collega i pin di output (C1-C4) a quattro porte digitali aggiuntive dell’Arduino.
  3. Configura le porte come ingresso e uscite nel codice Arduino.
  4. Scrivi un ciclo che legga lo stato dei tasti in ogni posizione della matrice.
  5. Utilizza una tabella di mapping per associare ciascun tasto a una risposta specifica.

Codice di esempio

// Esempio di codice
const int ROWS[4] = {2, 3, 4, 5};
const int COLS[4] = {6, 7, 8, 9};
void setup() {
pinMode(ROWS[i], INPUT);
pinMode(COLS[j], OUTPUT);
}
void loop() {
for (int i=0; i<4; i++) {
digitalWrite(COLS[i], HIGH); //Attiva la colonna
for (int j=0; j<4; j++) {
if(digitalRead(ROWS[j]) == LOW) {
Serial.println("Tasto premuto");
}
}
digitalWrite(COLS[i], LOW);
}
}

Mini-progetto

Crea un piccolo gioco di quiz dove ogni tasto rappresenta una risposta. Il gioco visualizza una domanda e attiva i tasti come opzioni.

Errori comuni

  • Non verificare la connessione dei pin
  • Ignorare il mapping corretto tra tasti e risposte
  • Non gestire lo stato di attesa per evitare false positive

Accessori consigliati

  • Display LCD 16×2
  • Buzzer
  • LED RGB
  • Pulsante a spingotto

Domande frequenti

Come posso leggere più tasti contemporaneamente?
Utilizza un ciclo che controlla ogni tasto in sequenza.

Qual è la differenza tra ROW e COL?
ROW rappresenta le righe, COL le colonne della matrice di tasti.

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “Clavier Matriciel 4×4 16 touches pour Arduino”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *