Utiliser un convertisseur de niveau logique avec Arduino
By Kunkune | Published: 2026-10-23
Category: Guides pratiques
Apprenez à connecter un Arduino 5V à des capteurs 3.3V à l'aide d'un convertisseur de niveau logique. Câblage étape par étape et code pour le décalage de niveau I2C avec TXS0108E.
Réponse rapide
Utilisez un convertisseur de niveau logique bidirectionnel comme le TXS0108E pour connecter en toute sécurité des broches Arduino en 5V à des capteurs I2C en 3.3V. Branchez le côté haute tension sur du 5V et le côté basse tension sur du 3.3V, puis connectez vos lignes SDA et SCL via les canaux du convertisseur.
Pourquoi vous avez besoin d'un décalage de niveau pour I2C
L'Arduino Uno et de nombreuses cartes classiques fonctionnent en logique 5V, tandis que des capteurs populaires comme le MPU6050, le BMP280 et les écrans OLED fonctionnent en 3.3V. Les connecter directement peut endommager le capteur ou provoquer des communications erratiques. Un convertisseur de niveau bidirectionnel effectue la traduction de tension automatiquement sans broches de contrôle supplémentaires.
Le TXS0108E offre huit canaux, vous pouvez donc décaler plusieurs signaux à la fois. Pour les projets I2C simples, vous n'avez besoin que de deux canaux (SDA et SCL), mais les canaux supplémentaires restent disponibles pour d'autres périphériques en 3.3V.
Choisir entre des modules à 2 canaux et à 8 canaux
Le module convertisseur de niveau logique IIC I2C à 2 canaux (ID produit 2426955) est compact et suffisant pour la plupart des projets de capteurs I2C. Il coûte un peu plus cher mais inclut des résistances de tirage optimisées pour I2C. Le convertisseur de niveau logique bidirectionnel TXS0108E à 8 canaux (ID produit 2426944) offre plus de canaux à un coût par canal inférieur, ce qui le rend meilleur pour les projets avec plusieurs périphériques en 3.3V ou des types de signaux mixtes.
Si vous n'avez besoin de décaler qu'une ou deux lignes I2C, le module à 2 canaux simplifie le câblage. Si vous prévoyez d'étendre votre projet plus tard, la version à 8 canaux vous donne de la place pour ajouter des périphériques SPI ou UART sans acheter un autre convertisseur.
Guide étape par étape : câblage et utilisation d'un convertisseur de niveau logique
- Identifiez les côtés haute et basse tension : Sur un module convertisseur de niveau typique, un côté est étiqueté HV (haute tension, 5V) et l'autre LV (basse tension, 3.3V). Connectez la broche HV au 5V de l'Arduino et la broche LV à l'alimentation en 3.3V du capteur. Erreur courante : inverser ces tensions peut endommager le module ou le capteur. Vérifiez deux fois les étiquettes sérigraphiées avant d'alimenter le circuit.
- Connectez la référence de masse : Connectez un fil de masse de GND de l'Arduino à la broche GND du convertisseur de niveau, et un autre de GND du convertisseur à GND du capteur. Les deux côtés doivent partager une masse commune pour que le convertisseur fonctionne. Erreur courante : oublier la connexion à la masse provoque des données erratiques ou l'absence de communication. Utilisez un rail de breadboard pour distribuer la masse à tous les appareils.
- Câblez les lignes de données I2C : Connectez SDA de l'Arduino (A4 sur Uno) à une broche de canal HV (ex. HV1), puis connectez la broche de canal LV correspondante (LV1) à SDA du capteur. Répétez pour SCL (A5 sur Uno) en utilisant un deuxième canal (HV2 à LV2). Erreur courante : croiser les canaux (ex. SDA sur HV1 et SCL sur LV2) ne fonctionnera pas. Gardez le même numéro de canal pour chaque ligne de signal des deux côtés.
- Ajoutez des résistances de tirage (si nécessaire) : De nombreux modules convertisseurs de niveau incluent des résistances de tirage des deux côtés. Si votre module en manque ou si votre bus I2C mesure plus de 10 cm, ajoutez des résistances de 4.7kΩ de SDA et SCL à du 3.3V uniquement du côté LV. Erreur courante : ajouter des tirages à du 5V du côté HV peut surcharger le capteur. Consultez la fiche technique de votre module ; le module à 2 canaux les inclut, le TXS0108E peut ne pas les inclure.
- Téléversez et testez avec le scanner I2C : Téléversez le sketch standard de scanner I2C (Fichier > Exemples > Wire > i2c_scanner) sur votre Arduino. Ouvrez le moniteur série à 9600 bauds. Si le câblage est correct, vous verrez l'adresse I2C du capteur. Erreur courante : ne voir aucun appareil signifie vérifier la masse, l'alimentation et le mappage des canaux. Un scan réussi confirme que le convertisseur de niveau fonctionne avant d'écrire votre sketch principal.
Informations produit
- 5 pièces Module convertisseur de niveau logique IIC I2C à 2 canaux 5V vers 3.3V Arduino: Le convertisseur de niveau IIC I2C à 2 canaux fait le pont entre les systèmes en 5V et 3.3V, permettant une communication efficace et stable entre des dispositifs de tensions différentes, parfait pour une gamme d'applications série. Ce module inclut des résistances de tirage intégrées qui correspondent aux exigences de temporisation I2C, vous pouvez donc le câbler directement sans composants externes.

5 pièces Module convertisseur de niveau logique IIC I2C à 2 canaux 5V vers 3.3V Arduino - TXS0108E Convertisseur de niveau logique bidirectionnel à 8 canaux: TXS0108E Convertisseur de niveau logique bidirectionnel à 8 canaux Huit canaux vous permettent de décaler simultanément des signaux I2C, SPI, UART et GPIO, ce qui en fait un choix flexible pour les projets multi-capteurs.

TXS0108E Convertisseur de niveau logique bidirectionnel à 8 canaux

