ESP32 C3 Super Mini - Interrupteur DIP
Un interrupteur DIP (Dual In-line Package) est un petit bloc d'interrupteurs à glissière que l'on règle à la main. Il sert à définir des adresses d'appareils, des paramètres de communication, des codes de sécurité et des modes de fonctionnement. Ce tutoriel vous montre comment utiliser un interrupteur DIP avec l'ESP32 C3 Super Mini.
Dans ce tutoriel, vous apprendrez :
- Ce qu'est un interrupteur DIP et comment fonctionne chaque position
- Comment câbler un interrupteur DIP à l'ESP32 C3 Super Mini
- Comment lire l'état ON/OFF de chaque position dans le code
- Comment transformer les positions en un seul nombre (codage binaire)
- Des idées de projets utilisant un interrupteur DIP

Matériel Requis
| 1 | × | ESP32 C3 Super Mini | |
| 1 | × | Câble USB Type-A vers Type-C (pour PC USB-A) | |
| 1 | × | Câble USB Type-C vers Type-C (pour PC USB-C) | |
| 1 | × | DIP Interrupteur | |
| 1 | × | Plaque d'essai | |
| 1 | × | Fils de connexion |
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À Propos de l'Interrupteur DIP
Un interrupteur DIP est un groupe de minuscules interrupteurs à glissière réunis dans un seul boîtier, et chaque petit interrupteur s'appelle une "position".
Caractéristiques principales :
- Plusieurs interrupteurs en un seul composant : Chaque position est son propre interrupteur ON/OFF
- Réglage à la main : Vous faites glisser une position avec la pointe d'un stylo ou un petit tournevis
- Conserve son réglage : La valeur reste après la coupure de l'alimentation
- Pas de polarité : Les deux broches d'une position peuvent être inversées
- Adapté aux débutants : Fonctionne avec la logique 3,3V de l'ESP32 C3 Super Mini
Spécifications techniques :
- Tailles courantes : 2, 4, 5, 6, 8 et 10 positions
- Nombre de broches : 2 broches par position, la moitié sur chaque rangée
- Type d'interrupteur : SPST mécanique par position
- Résistance de contact : Proche de 0 ohm en position ON, très élevée en position OFF
- Niveau logique utilisé ici : 3,3V fourni par l'ESP32 C3 Super Mini
Chaque position représente un bit d'un nombre. En faisant glisser les positions entre ON et OFF, vous définissez le nombre souhaité.
Brochage
Un interrupteur DIP possède deux rangées de broches, et chaque rangée compte autant de broches que de positions.

- Broches de la rangée supérieure : Un côté de chaque interrupteur à glissière
- Broches de la rangée inférieure : L'autre côté du même interrupteur à glissière
- Paires de broches : Deux broches face à face forment une position
- Pas d'ordre fixe : Les deux côtés peuvent être utilisés indifféremment
- Exemple : Un interrupteur DIP à 4 positions possède 8 broches au total, 4 de chaque côté
Comment Ça Fonctionne
Chaque position d'un interrupteur DIP fonctionne comme un fil que vous pouvez ouvrir ou fermer.
- Position ON : L'interrupteur est fermé, le courant peut donc passer
- Position OFF : L'interrupteur est ouvert, le courant est donc bloqué
Câblez un côté d'une position à GND et l'autre côté à une broche de l'ESP32 C3 Super Mini configurée en entrée avec pull-up. Le tableau ci-dessous montre ce que vous lisez :
| Position de l'interrupteur DIP | Représentation binaire | État du circuit | État de la broche de l'ESP32 C3 Super Mini |
|---|---|---|---|
| ON | 1 | FERMÉ | LOW |
| OFF | 0 | OUVERT | HIGH |
※ Note:
L'ESP32 C3 Super Mini utilise uniquement une logique 3,3V. Ne connectez jamais un signal 5V à une broche GPIO.
Les parties suivantes utilisent un interrupteur DIP à 4 positions comme exemple. Vous pouvez adapter la même idée aux interrupteurs DIP à 2, 3, 5, 6, 8 et 10 positions.
Schéma de Câblage
Connectez un côté de chaque position à une broche GPIO, et l'autre côté de chaque position à GND.
- Remarque : Utilisez uniquement une logique 3,3V. N'appliquez pas de 5V sur une broche GPIO.
- Remarque : GPIO8 et GPIO9 sont des broches de configuration du démarrage (strapping). Mettez les positions 3 et 4 sur OFF avant d'alimenter ou de réinitialiser la carte, sinon elle ne démarrera pas normalement.
- Remarque : N'utilisez pas GPIO20 ni GPIO21 — le Moniteur Série les utilise.
- Remarque : Les deux broches d'une même position peuvent être inversées.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
| Broche de l'interrupteur DIP | Broche de l'ESP32 C3 Super Mini |
|---|---|
| Position 1 (côté A) | GPIO6 |
| Position 2 (côté A) | GPIO7 |
| Position 3 (côté A) | GPIO8 |
| Position 4 (côté A) | GPIO9 |
| Positions 1 à 4 (côté B) | GND |
Code ESP32 C3 Super Mini - Interrupteur DIP
Nous allons apprendre à travers deux exemples de code :
- Lire l'état ON/OFF de chaque position de l'interrupteur DIP.
- Coder les positions en un nombre.
Code ESP32 C3 Super Mini - Lire l'état ON/OFF de l'interrupteur DIP
Ce premier sketch affiche l'état de chaque position, une ligne par position.
Ce que fait ce code :
- Configure GPIO6, GPIO7, GPIO8 et GPIO9 en entrées avec la résistance de pull-up interne activée
- Lit chaque position de l'interrupteur DIP toutes les demi-secondes
- Affiche ON lorsque la broche lit LOW, ce qui signifie que l'interrupteur est fermé
- Affiche OFF lorsque la broche lit HIGH, ce qui signifie que l'interrupteur est ouvert
- Ajoute un petit délai pour que le Moniteur Série reste facile à lire
Étapes Rapides
- Nouveau sur l'ESP32 C3 Super Mini ? Suivez d'abord notre tutoriel ESP32 C3 Super Mini - Premiers pas pour configurer votre environnement de développement.
- Câblez les composants : Suivez le schéma de câblage ci-dessus pour connecter l'interrupteur DIP à l'ESP32 C3 Super Mini.
- Connectez la carte : Branchez l'ESP32 C3 Super Mini à votre PC avec un câble USB Type-C.
- Ouvrez Arduino IDE : Lancez le logiciel Arduino IDE.
- Sélectionnez la carte : Assurez-vous que ESP32 C3 Super Mini est sélectionnée dans Tools > Board.
- Sélectionnez le port : Choisissez le port COM de votre ESP32 C3 Super Mini dans Tools > Port.
- Téléversez le code : Copiez le code ci-dessus, collez-le dans Arduino IDE, puis cliquez sur le bouton Téléverser.
- Ouvrez le Moniteur Série : Réglez le débit en bauds sur 115200.
- Faites glisser les positions : Mettez chaque position de l'interrupteur DIP sur ON, une par une.
- Observez le résultat : Regardez le Moniteur Série afficher les nouveaux états.
- Astuce Pro : Si une position lit toujours ON, vérifiez que son fil GND ne touche pas le fil GPIO.
Code ESP32 C3 Super Mini - Coder les états de l'interrupteur DIP en un nombre
Ce second sketch transforme les quatre positions en un seul nombre décimal.
Ce que fait ce code :
- Lit les quatre mêmes broches : GPIO6, GPIO7, GPIO8 et GPIO9
- Utilise la position 1 comme bit de poids fort et la position 4 comme bit de poids faible
- Met un bit à 1 lorsque sa position est ON
- Affiche le nombre final, de 0 à 15 pour un interrupteur DIP à 4 positions
- Répète la lecture toutes les demi-secondes
Étapes Rapides
- Nouveau sur l'ESP32 C3 Super Mini ? Suivez d'abord notre tutoriel ESP32 C3 Super Mini - Premiers pas pour configurer votre environnement de développement.
- Gardez le même câblage : Le schéma de câblage ci-dessus ne change pas.
- Connectez la carte : Branchez l'ESP32 C3 Super Mini à votre PC avec un câble USB Type-C.
- Ouvrez Arduino IDE : Lancez le logiciel Arduino IDE.
- Sélectionnez la carte : Assurez-vous que ESP32 C3 Super Mini est sélectionnée dans Tools > Board.
- Sélectionnez le port : Choisissez le port COM de votre ESP32 C3 Super Mini dans Tools > Port.
- Téléversez le code : Copiez le second code ci-dessus, collez-le dans Arduino IDE, puis cliquez sur le bouton Téléverser.
- Ouvrez le Moniteur Série : Réglez le débit en bauds sur 115200.
- Faites glisser les positions : Mettez chaque position de l'interrupteur DIP sur ON, une par une.
- Observez le résultat : Le nombre affiché change à mesure que vous faites glisser les positions.
- Astuce Pro : Un interrupteur DIP à 8 positions vous donne de 0 à 255. Il suffit de modifier POSITION_NUM et d'ajouter des broches.
La valeur dépend de la position de chaque interrupteur à glissière. Le tableau ci-dessous montre la correspondance entre les positions ON/OFF et la valeur entière pour un interrupteur DIP à 4 positions :
| Position-1 | Position-2 | Position-3 | Position-4 | Valeur binaire | Valeur décimale |
|---|---|---|---|---|---|
| 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 |
Explication du Code Ligne par Ligne
Le code ESP32 C3 Super Mini ci-dessus contient une explication ligne par ligne. Veuillez lire les commentaires dans le code !
Idées d'Applications/Projets
Voici des façons simples d'utiliser un interrupteur DIP avec l'ESP32 C3 Super Mini.
- Adresse d'appareil : Attribuez un numéro à chaque carte pour que plusieurs cartes puissent partager un même bus.
- Sélecteur de mode : Choisissez l'un des 16 modes de programme sans modifier le code.
- Serrure à code secret : N'activez un relais que lorsque la bonne combinaison est réglée.
- Calibrage de capteur : Choisissez un palier de seuil pour la lecture d'un capteur.
- Sélecteur de profil Wi-Fi : Choisissez à quel réseau Wi-Fi enregistré la carte se connecte.
- Sélecteur de motif LED : Changez une animation lumineuse en faisant glisser une seule position.
Relevez le Défi
Essayez ces étapes pour aller plus loin avec l'ESP32 C3 Super Mini et un interrupteur DIP.
- Facile : Allumez une LED externe sur GPIO3 lorsque la position 1 est sur ON.
- Facile : Affichez la valeur en binaire avec Serial.println(encoded_state, BIN).
- Moyen : N'affichez un message que lorsque le nombre codé change.
- Moyen : Utilisez le nombre pour régler une vitesse de clignotement, de rapide à lente.
- Avancé : Ajoutez une 5e et une 6e position sur GPIO2 et GPIO4 pour des valeurs de 0 à 63.
- Avancé : Envoyez la valeur de l'interrupteur DIP via Wi-Fi vers une page web.