ESP8266 - Clavier 1x4

Ce tutoriel vous apprendra à utiliser un clavier 1x4 avec un ESP8266. Nous couvrirons :

Clavier ESP8266 NodeMCU 1x4

Préparation du matériel

1×ESP8266 NodeMCU
1×USB Cable Type-C
1×Keypad 1x4
1×Jumper Wires
1×(Recommended) Screw Terminal Expansion Board for ESP8266
1×(Recommended) Power Splitter For ESP8266 Type-C

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos du clavier 1x4

Un clavier 1x4 a quatre boutons alignés en une rangée. Il est souvent utilisé pour entrer un mot de passe, naviguer dans les menus ou contrôler des appareils.

Brochage

Le clavier 1x4 possède 5 broches. La disposition de ces broches ne correspond pas à l'ordre des étiquettes des touches.

  • La broche 1 se connecte à la touche 2.
  • La broche 2 se connecte à la touche 1.
  • La broche 3 se connecte à la touche 4.
  • La broche 4 se connecte à la touche 3.
  • La broche 5 se connecte à toutes les touches et est une broche commune.
Brocheur 1x4 du clavier
image source: diyables.io

Diagramme de câblage

Schéma de câblage du clavier 1x4 ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Voir plus dans Brochage ESP8266. et Comment alimenter l'ESP8266..

Code ESP8266

Chaque touche du clavier 1x4 fonctionne comme un bouton. Nous pouvons utiliser la fonction digitalRead() pour vérifier l'état de chaque touche. Comme avec n'importe quel bouton, il peut y avoir des problèmes de rebond où une pression semble être plusieurs pressions. Pour éviter le rebond, nous devons filtrer chaque touche. Faire cela pour quatre touches sans affecter d'autres parties du code peut être difficile. Heureusement, la bibliothèque ezButton facilite cette tâche.

#include <ezButton.h> #define KEY_NUM 4 // the number of keys #define PIN_KEY_1 D5 // The ESP8266 NodeMCU pin connected to the key 1 #define PIN_KEY_2 D6 // The ESP8266 NodeMCU pin connected to the key 2 #define PIN_KEY_3 D1 // The ESP8266 NodeMCU pin connected to the key 3 #define PIN_KEY_4 D2 // The ESP8266 NodeMCU pin connected to the key 4 ezButton keypad_1x4[] = { ezButton(PIN_KEY_1), ezButton(PIN_KEY_2), ezButton(PIN_KEY_3), ezButton(PIN_KEY_4) }; void setup() { Serial.begin(9600); for (byte i = 0; i < KEY_NUM; i++) { keypad_1x4[i].setDebounceTime(100); // set debounce time to 100 milliseconds } } void loop() { int key = getKeyPressed(); if (key) { Serial.print("The key "); Serial.print(key); Serial.println(" is pressed"); } } int getKeyPressed() { for (byte i = 0; i < KEY_NUM; i++) keypad_1x4[i].loop(); // MUST call the loop() function first for (byte i = 0; i < KEY_NUM; i++) { // get key state after debounce int key_state = keypad_1x4[i].getState(); // the state after debounce if (keypad_1x4[i].isPressed()) return (i + 1); } return 0; }

Étapes rapides

Pour commencer avec l'ESP8266 sur l'Arduino IDE, suivez ces étapes :

  • Consultez le Installation du logiciel ESP8266. tutoriel si c'est votre première utilisation d'ESP8266.
  • Connectez l'ESP8266 au clavier 1x4.
  • Connectez la carte ESP8266 à votre ordinateur à l'aide d'un câble USB.
  • Ouvrez Arduino IDE sur votre ordinateur.
  • Choisissez la carte ESP8266 correcte, comme par exemple (NodeMCU 1.0 (ESP-12E Module)), et son port COM respectif.
  • Cliquez sur l'icône Libraries sur le côté gauche de l'Arduino IDE.
  • Recherchez ezButton pour trouver la bibliothèque bouton de ESP8266GetStarted.com.
  • Cliquez sur le bouton Install pour installer la bibliothèque ezButton.
Bibliothèque de boutons ESP8266 NodeMCU
  • Copiez le code et ouvrez-le dans Arduino IDE
  • Cliquez sur le bouton Upload dans Arduino IDE pour téléverser le code sur votre ESP8266
  • Ouvrez le Moniteur Série
  • Appuyez sur chaque touche du clavier 1x4 l'une après l'autre
  • Vérifiez les résultats sur le Moniteur Série
COM6
Send
1 2 3 4
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!