ESP8266 - Interrupteur DIP
Les interrupteurs DIP (Dual In-line Package) sont largement utilisés en électronique pour diverses tâches de configuration, telles que les adresses des dispositifs, les paramètres de communication, les codes de sécurité. Ce tutoriel se penchera sur l'utilisation de l'interrupteur DIP avec l'ESP8266. Plus précisément, nous couvrirons :
- Comprendre le commutateur DIP et son fonctionnement.
- Établir des connexions entre le commutateur DIP et l'ESP8266.
- Programmer l'ESP8266 pour lire le statut ON/OFF du commutateur DIP.
- Programmer l'ESP8266 pour interpréter les valeurs entières configurées par le commutateur DIP.
Préparation du matériel
1 | × | ESP8266 NodeMCU | |
1 | × | Micro USB Cable | |
1 | × | DIP Switch | |
1 | × | Breadboard | |
1 | × | Jumper Wires | |
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) |
Sur l'interrupteur DIP
Les commutateurs DIP sont principalement utilisés pour configurer des dispositifs, permettant aux utilisateurs de régler des paramètres tels que l'adresse du dispositif, les paramètres de communication, les codes de sécurité, les modes de fonctionnement et les préférences système dans divers secteurs et applications.
Un interrupteur DIP se compose de plusieurs petits commutateurs coulissants regroupés ensemble. Chacun de ces commutateurs coulissants est connu sous le nom de "position". Les interrupteurs DIP sont disponibles en différents types basés sur le nombre de positions qu'ils offrent. Par exemple, il existe des interrupteurs DIP à 2 positions, 4 positions, 5 positions, 6 positions, 8 positions et 10 positions.
Un interrupteur DIP peut représenter un nombre configurable. Chaque position sur l'interrupteur correspond à un bit du nombre. En basculant les positions entre ON et OFF, nous pouvons définir le nombre désiré.
Brochage
Un commutateur DIP est composé de deux rangées de broches, le nombre de broches dans chaque rangée correspondant aux positions de commutation disponibles. Par exemple, un commutateur DIP à 4 positions comprend un total de 8 broches, réparties également avec 4 broches de chaque côté. Dans la structure du commutateur DIP, chaque paire de broches opposées forme un commutateur coulissant. Il convient de mentionner que la différenciation entre les broches des deux côtés n'est pas nécessaire car elles peuvent être utilisées de manière interchangeable.
Comment ça marche
Dans les DIP switches, lorsqu'un interrupteur est en position ON, cela signifie que l'interrupteur est fermé. Cela indique que la connexion électrique est établie, permettant au courant de passer à travers l'interrupteur.
Inversement, lorsqu'un interrupteur est en position OFF, cela signifie que l'interrupteur est ouvert. Dans cet état, la connexion électrique est interrompue et le courant ne peut pas circuler à travers l'interrupteur.
Alors, pour résumer :
- Position ON : Circuit fermé, permettant le passage du courant.
- Position OFF : Circuit ouvert, obstruant le passage du courant.
Lorsque nous connectons un côté d'un interrupteur à GND et l'autre à une broche ESP8266, puis configurons la broche ESP8266 comme entrée numérique avec résistance de tirage, le tableau ci-dessous illustre la relation entre les positions de l'interrupteur et les valeurs lues depuis l'ESP8266 :
DIP switch position | Binary representation | Circuit state | ESP8266 pin state |
---|---|---|---|
ON | 1 | CLOSED | LOW |
OFF | 0 | OPEN | HIGH |
Dans les parties suivantes, nous utiliserons par exemple un commutateur DIP à 4 positions. Vous pouvez facilement adapter pour des commutateurs DIP à 2 positions, à 3 positions, à 5 positions, à 6 positions, à 8 positions et à 10 positions...
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Voir plus dans l'agencement des broches de l'ESP8266 et comment alimenter l'ESP8266 et d'autres composants.
Code ESP8266 - Commutateur DIP
Nous apprendrons à travers deux morceaux de code :
- Lire l'état ON/OFF de chaque position sur le commutateur DIP.
- Encoder les positions en un nombre.
Code ESP8266 - Lecture de l'état ON/OFF du commutateur DIP
Étapes rapides
Pour commencer avec l'ESP8266 sur Arduino IDE, suivez ces étapes :
- Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est votre première utilisation de l'ESP8266.
- Câblez les composants comme indiqué dans le schéma.
- Connectez la carte ESP8266 à votre ordinateur à l'aide d'un câble USB.
- Ouvrez Arduino IDE sur votre ordinateur.
- Choisissez la bonne carte ESP8266, comme (par exemple NodeMCU 1.0 (Module ESP-12E)), et son port COM respectif.
- Faites le câblage comme le schéma ci-dessus
- Connectez ESP8266 au PC via un câble USB
- Ouvrez Arduino IDE
- Sélectionnez la bonne carte et le bon port
- Cliquez sur le bouton Upload sur Arduino IDE pour téléverser le code sur ESP8266
- Mettez chaque position du commutateur DIP sur ON une par une.
- Voyez le résultat sur le moniteur série.
Code ESP8266 - Codage des états d'un interrupteur DIP en un nombre
Étapes rapides
Pour commencer avec l'ESP8266 sur Arduino IDE, suivez ces étapes :
- Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est votre première utilisation de l'ESP8266.
- Connectez les composants comme indiqué dans le schéma.
- Connectez la carte ESP8266 à votre ordinateur via un câble USB.
- Ouvrez Arduino IDE sur votre ordinateur.
- Choisissez la bonne carte ESP8266, comme (par exemple, NodeMCU 1.0 (Module ESP-12E)), et son port COM respectif.
- Téléchargez le code ci-dessus sur l'ESP8266
- Mettez chaque position sur l'interrupteur DIP en ON une par une.
- Voir le résultat sur le moniteur série, il ressemble à ce qui suit.
Veuillez noter que la valeur dépend de la position de chaque interrupteur à glissière. Le tableau ci-dessous montre la correspondance entre la position ON/OFF et la valeur entière pour un interrupteur DIP à 4 positions :
Position-1 | Position-2 | Position-3 | Position-4 | Binary Value | Decimal Value |
---|---|---|---|---|---|
OFF | OFF | OFF | OFF | 0000 | 0 |
OFF | OFF | OFF | ON | 0001 | 1 |
OFF | OFF | ON | OFF | 0010 | 2 |
OFF | OFF | ON | ON | 0011 | 3 |
OFF | ON | OFF | OFF | 0100 | 4 |
OFF | ON | OFF | ON | 0101 | 5 |
OFF | ON | ON | OFF | 0110 | 6 |
OFF | ON | ON | ON | 0111 | 7 |
ON | OFF | OFF | OFF | 1000 | 8 |
ON | OFF | OFF | ON | 1001 | 9 |
ON | OFF | ON | OFF | 1010 | 10 |
ON | OFF | ON | ON | 1011 | 11 |
ON | ON | OFF | OFF | 1100 | 12 |
ON | ON | OFF | ON | 1101 | 13 |
ON | ON | ON | OFF | 1110 | 14 |
ON | ON | ON | ON | 1111 | 15 |