Arduino Nano - Interrupteur DIP
Les commutateurs Dual In-line Package (DIP) sont fréquemment utilisés en électronique pour des tâches de configuration, telles que les adresses des dispositifs, les paramètres de communication, les codes de sécurité, le mode opératoire... Ce tutoriel explorera comment utiliser le commutateur DIP avec Arduino Nano. Plus précisément, nous aborderons :
- Comprendre l'interrupteur DIP et ses principes de fonctionnement.
- Établissement de connexions entre l'interrupteur DIP et l'Arduino Nano.
- Programmation de l'Arduino Nano pour lire le statut ON/OFF de l'interrupteur DIP.
- Programmation de l'Arduino Nano pour interpréter la valeur entière définie par l'interrupteur DIP.
Préparation du matériel
1 | × | Arduino Nano | |
1 | × | USB A to Mini-B USB cable | |
1 | × | DIP Switch | |
1 | × | Breadboard | |
1 | × | Jumper Wires | |
1 | × | (Optional) 9V Power Adapter for Arduino Nano | |
1 | × | (Recommended) Screw Terminal Adapter for Arduino Nano |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos de l'interrupteur DIP
Les interrupteurs DIP sont principalement utilisés pour configurer des appareils, offrant aux utilisateurs la possibilité de définir des paramètres tels que les adresses des dispositifs, 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 comprend plusieurs petits interrupteurs coulissants regroupés ensemble, chaque interrupteur coulissant étant appelé une « position ». Les interrupteurs DIP sont disponibles en différents types déterminés par le nombre de positions qu'ils possèdent. Par exemple, il existe des interrupteurs DIP à 2 positions, 4 positions, 5 positions, 6 positions, 8 positions et 10 positions.
Chaque position sur un commutateur DIP représente un bit configurable d'un nombre. En basculant les positions entre ON et OFF, nous pouvons définir la valeur numérique souhaitée.
Brochage
Un commutateur DIP est composé de deux rangées de broches, où le nombre de broches dans chaque rangée correspond 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 l'assemblage du commutateur DIP, chaque ensemble de broches opposées forme un commutateur coulissant. Il est important de noter qu'il n'est pas nécessaire de différencier les broches des deux côtés car elles peuvent être interchangées.
Comment ça marche
Dans les commutateurs DIP, lorsque l'interrupteur est en position ON, cela indique que l'interrupteur est activé ou fermé. Cela signifie qu'une connexion électrique est établie, permettant au courant de passer à travers l'interrupteur.
En revanche, lorsqu'un interrupteur est en position OFF, cela signifie que l'interrupteur est désengagé ou ouvert. Dans cet état, la connexion électrique est interrompue, empêchant le courant de circuler à travers l'interrupteur.
En résumé :
- Position ON : Circuit fermé, permettant le passage du courant.
- Position OFF : Circuit ouvert, bloquant le passage du courant.
Lorsque nous connectons un côté d'un interrupteur à GND et l'autre côté à une broche Arduino Nano, puis configurons la broche Arduino Nano comme une entrée numérique avec pull-up, le tableau ci-dessous montre la relation entre la position de l'interrupteur et les valeurs lues depuis l'Arduino Nano :
DIP switch position | Binary representation | Circuit state | Arduino Nano 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 l'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
Code Arduino Nano - Interrupteur DIP
Nous apprendrons à travers deux morceaux de code :
- Lecture de l'état ON/OFF de positions individuelles sur le commutateur DIP.
- Codage des positions en un nombre.
Code Arduino Nano - Lecture de l'état ON/OFF du commutateur DIP
Étapes rapides
- Faites le câblage comme sur le schéma ci-dessus
- Connectez l'Arduino Nano au PC via un câble USB
- Ouvrez l'Arduino IDE
- Sélectionnez la bonne carte et le bon port
- Cliquez sur le bouton Upload dans l'Arduino IDE pour charger le code sur l'Arduino Nano
- Basculez chaque position du commutateur DIP en position ON une par une.
- Consultez le résultat sur le moniteur série.
Code Arduino Nano - Encodage des états d'un interrupteur DIP en un nombre
Étapes rapides
- Téléchargez le code ci-dessus sur Arduino Nano.
- Basculez chaque position du commutateur DIP sur ON, une par une.
- Consultez le résultat sur le moniteur série, cela ressemble à ce qui suit.
Veuillez noter que la valeur dépend de la position de chaque commutateur à glissière. Le tableau ci-dessous montre la correspondance entre la position ON/OFF et la valeur entière pour un commutateur 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 |