ESP8266 - Manette de jeu
Préparation du matériel
1 | × | ESP8266 NodeMCU | |
1 | × | Micro USB Cable | |
1 | × | Joystick | |
1 | × | Jumper Wires | |
1 | × | (Optional) 5V Power Adapter for ESP8266 | |
1 | × | (Optional) ESP8266 Screw Terminal Adapter |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du joystick 2 axes
Vous avez peut-être rencontré un joystick dans différents endroits, comme une manette de jeu, une télécommande de jouet ou même une grande machine comme une commande d'excavatrice.
Le joystick est composé de deux potentiomètres disposés perpendiculairement l'un à l'autre et d'un bouton-poussoir. Ainsi, il produit les sorties suivantes :
- Une valeur analogique allant de 0 à 1023 correspondant à la position horizontale (connue sous le nom de coordonnée X)
- Une valeur analogique allant de 0 à 1023 correspondant à la position verticale (connue sous le nom de coordonnée Y)
- Une valeur numérique du bouton-poussoir (soit HAUT soit BAS)
Par conséquent :
- Deux valeurs analogiques peuvent être fusionnées pour former des coordonnées 2D.
- Le centre des coordonnées est la position de repos du joystick.
- Un code de test (présenté dans la section suivante) peut déterminer la direction réelle des coordonnées.
Certaines applications peuvent utiliser les trois sorties, tandis que d'autres peuvent n'en utiliser qu'une partie.
ESP8266 et Joystick
Étant donné que l'ESP8266 ne possède qu'une seule broche d'entrée analogique et que le joystick en nécessite deux, il existe deux manières de résoudre ce problème :
- Module Analogique à Numérique :
- Vous pouvez ajouter un gadget externe appelé un module Convertisseur Analogique à Numérique (CAD), comme le Module CAD ADS1115.
- Cet appareil pratique vous offre plus de broches d'entrée analogiques, vous permettant de connecter plusieurs dispositifs analogiques, y compris le joystick.
- Solution de multiplexage :
- Une autre option est d'utiliser une solution de multiplexage, où vous alternez la lecture des axes X et Y du joystick en utilisant cette unique broche d'entrée analogique.
- Cela implique de commuter entre les axes X et Y à différents moments, en utilisant une technique appelée multiplexage par répartition dans le temps.
Cependant, ces deux options peuvent être un peu coûteuses et un peu compliquées. Au lieu de cela, nous vous recommandons d'opter pour l'ESP32 au lieu de l'ESP8266. Consultez le tutoriel ESP8266 - Joystick pour une méthode plus simple et plus efficace.