Ce que vous apprendrez

Utilisation du clavier matriciel 4x4 tactile TTP229 avec Arduino

Prérequis

clavier matriciel 4x4 tactile TTP229 

Contenu du cours

Le clavier matriciel 4x4 tactile TTP229 est un module d’interrupteur tactile capacitif qui offre seize touches distincts de détection tactile, basé sur un circuit intégré qui détecte les variations de capacité sur les 16 touches et peut être configuré en mode 8 bits où les broches TP2 sont en circuit ouvert ou 16 bits où les broches TP2 sont court-circuités. Chaque touche a une capacitance propre qui change lorsque l’on la touche. Le circuit intégré mesure ces changements et envoie un signal correspondant à la touche pressée. Le signal peut être transmis en mode I2C ou en mode parallèle selon le réglage du clavier. Le mode I2C utilise deux fils (SCL et SDO) pour communiquer avec la carte Arduino. Le mode parallèle utilise 8 fils (TP0 à TP7) pour envoyer le code binaire de la touche pressée. Il est important de noter que le clavier matriciel 4x4 tactile TTP229 16 canaux est conçu pour fournir une interface d’entrée polyvalente et réactive pour les projets électroniques nécessitant de multiples options de contrôle par contactAvec sa capacité à détecter des contacts électriques sur une multitude de canaux, il permet des interactions intuitives et réactives dans une variété d’applications.

 

Spécifications du module

-          Lumière de puissance à bord : Elle indique si le module est sous tension.

-          Tension de fonctionnement : 2.4 V à 5.5V.

-          Courant de fonctionnement : < 8mA

-          Poids : 22g

-          Dimension : 65mm x 63mm x 10mm

Pour réaliser le câblage du clavier TTP229 avec la carte Arduino, nous allons utiliser les composants suivants :

 

-         Un Clavier matriciel 4x4 tactile TTP229

 

 

-          Une carte Arduino

  

 

-          Des jumpers mâle femelle

                     

Etape1 : Mode I2C

Câblage

TTP 229 16 canaux

carte Arduino

VCC

5V

GND

GND

SCL

broche 2

SDO

broche 3

-          Reliez les bornes TP2 du module TTP229

                         


Plan de câblage

                                     

Plan de câblage en mode I2C

Code Arduino

Voici un exemple de code pour faire fonctionner les seize touches du TTP229 en mode I2C.



#include <TTP229.h> /* Cette ligne inclut la bibliothèque TTP229.h qui permet de contrôler le module TTP229 avec 16 touches tactiles capacitives. Vous pouvez télécharger la bibliothèque TTP 229 en allant dans la fenêtre Outils puis Gestionnaire de bibliothèque et puis vous tapez TTP229 dans la barre de recherche.*/

 


const int SCL_PIN = 2;  /*Cette ligne définit une constante nommée SCL_PIN qui vaut 2. Cela signifie que la broche SCL du module TTP229 est connectée à la broche 2 de l’Arduino.*/

const int SDO_PIN = 3;  /* Cette ligne définit une constante nommée SDO_PIN qui vaut 3. Cela signifie que la broche SDO du module TTP229 est connectée à la broche 3 de l’Arduino.*/

TTP229 ttp229(SCL_PIN, SDO_PIN); /* Cette ligne crée un objet nommé ttp229 de la classe TTP229, en passant les constantes SCL_PIN et SDO_PIN comme paramètres. Cela permet d'initialiser la communication avec le module TTP229 via le bus I2C.*/

void setup() /* Cette ligne déclare la fonction setup() qui s'exécute une seule fois au démarrage du programme.*/

{

  Serial.begin(115200); /* Cette ligne initialise la communication série avec le moniteur série de l'IDE Arduino, en utilisant un débit de 115200 bauds. Cela permet d'afficher les messages et les données sur le moniteur série.*/

  Serial.println("Commencez à appuyer sur une touche à la fois!"); /* Cette ligne affiche le message "Commencez à appuyer sur une touche à la fois!" sur le moniteur série, suivi d'un saut de ligne. Cela indique à l'utilisateur qu'il peut commencer à tester les touches du module TTP229.*/

}

 

void loop() /* Cette ligne déclare la fonction loop() qui s'exécute en boucle après la fonction setup().*/

{

  uint8_t key = ttp229.ReadKey16(); /* Cette ligne déclare une variable nommée key de type uint8_t (entier non signé sur 8 bits) et lui affecte la valeur renvoyée par la méthode ReadKey16() de l'objet ttp229. Cette méthode lit l'état des 16 touches du module TTP229 et renvoie le numéro de la touche appuyée ou 0 si aucune touche n'est appuyée.*/

  if (key) Serial.println(key); /* Cette ligne teste si la variable key est différente de zéro, ce qui signifie qu'une touche est appuyée. Si c'est le cas, elle affiche la valeur de key sur le moniteur série, suivi d'un saut de ligne. Cela permet d'identifier quelle touche est appuyée.*/

}

Etape2 : Mode parallèle

Câblage

Carte Arduino

TTP229

5V

VCC

GND

GND

Broche 2

OUT1

Broche 3

OUT2

Broche 4

OUT3

Broche 5

OUT4

Broche 6

OUT5

Broche 7

OUT6

Broche 8

OUT7

Broche 9

OUT8

Broche 10

SCL

Broche 11

SDO

 

-          Reliez les bornes TP2 du module TTP229

                                       

 

Plan de câblage

                                   

Plan de câblage en mode parallèle

 

Code Arduino

Voici un exemple de code pour faire fonctionner les seize touches du TTP229 en mode parallèle.

 

#define SCL_PIN 10

#define SDO_PIN 11

/* Utilisé pour stocker l'état de la clé */

byte Key;

 

void setup()

{

  /* Initialise the serial interface */

  Serial.begin(9600);

  /* Configure the clock and data pins */

  pinMode(SCL_PIN, OUTPUT); 

  pinMode(SDO_PIN, INPUT);

}

 

/* Main program */

void loop()

{

  /* Read the current state of the keypad */

  Key = Read_Keypad();

 

  /* If a key has been pressed output it to the serial port */

  if (Key)

    Serial.println(Key);

 

  /* Wait a little before reading again

     so not to flood the serial port*/

  delay(100);

}

/* Read the state of the keypad */

byte Read_Keypad(void)

{

  byte Count;

  byte Key_State = 0;

 

  /* Pulse the clock pin 16 times (one for each key of the keypad)

     and read the state of the data pin on each pulse */

  for(Count = 1; Count <= 16; Count++)

  {

    digitalWrite(SCL_PIN, LOW);

    /* If the data pin is low (active low mode) then store the

       current key number */

    if (!digitalRead(SDO_PIN))

      Key_State = Count;

   

    digitalWrite(SCL_PIN, HIGH);

  } 

  return Key_State;

}

 Les deux codes Arduino sont disponibles ici

Test

A cause de la facilité qu’offre le mode I2C en raison de l’utilisation de peu de fils, nous avons préféré utiliser ce mode dans le présent tutoriel. Voici les tests et résultats que vous devez obtenir si vous faites le câblage en suivant le Plan de câblage en mode I2C et exécutez son code.

-          Appuyez sur les touches du clavier tactile TTP229 pour vérifier si elles fonctionnent correctement. Chaque touche du clavier a un numéro associé.

-          Lorsque vous appuyez sur une touche, le numéro de cette touche est affiché sur le moniteur série de l’IDE Arduino. Par exemple, si vous appuyez sur la touche 1, le chiffre “1” sera affiché.

-          N’oubliez pas d’ouvrir le moniteur série dans l’IDE Arduino pour voir les résultats de ces tests. Assurez-vous également que la vitesse en bauds du moniteur série correspond à celle définie dans le code (Serial.begin(115200);).

Le clavier matriciel 4x4 tactile peut être utilisé dans d’autres domaines d’applications variés, tels que :

-          Clavier numérique pour Arduino ou Raspberry Pi

-          Contrôle tactile pour des appareils électroniques comme les lampes, les ventilateurs, les alarmes, etc.

-          Interface utilisateur pour des jeux, des robots, des instruments de musique, etc.

-          Contrôleur de volume ou de luminosité pour des écrans ou des haut-parleurs

-          Clavier de contrôle d’un coffre-fort.

 

 

Ce tutoriel sur le Clavier matriciel 4x4 tactile a permis de mettre en évidence la polyvalence et l’efficacité de ce capteur dans diverses applications. Grâce à ses 16 canaux, le TTP229 offre une grande flexibilité, permettant de détecter une multitude d’interactions tactiles. Nous espérons que ce tutoriel vous a fourni les connaissances nécessaires pour intégrer le TTP229 dans vos propres projets. N’hésitez pas à partager vos expériences et vos réalisations avec nous!

Comment interfacer le clavier matriciel 4x4 tactile TTP229 avec Arduino.

Catégorie

Programmation

Durée

01:00:00

Nombre de vidéos

0

Certificat de fin de formation

NON