Référence du brochage de l’ESP8266 : Quelles broches GPIO devez-vous utiliser ?

Cet article est un guide pour les GPIO de l’ESP8266 : schémas de brochage, leurs fonctions et comment les utiliser.

La puce ESP8266 12-E est livrée avec 17 broches GPIO. Toutes les GPIO ne sont pas exposées dans toutes les cartes de développement ESP8266, certaines GPIO ne sont pas recommandées à utiliser, et d’autres ont des fonctions très spécifiques.

Avec ce guide, vous apprendrez à utiliser correctement les GPIO de l’ESP8266 et vous éviterez des heures de frustration en utilisant les broches les plus adaptées à vos projets.

Nous avons également un guide pour les GPIO de l’ESP32 : ESP32 Pinout Reference : Quelles broches GPIO devriez-vous utiliser?

Pinning de la puce ESP8266 12-E

Le schéma suivant illustre le pinout de la puce ESP8266 12-E. Utilisez ce schéma si vous utilisez une puce ESP8266 nue dans vos projets.

Note : toutes les GPIO ne sont pas accessibles dans toutes les cartes de développement, mais chaque GPIO spécifique fonctionne de la même manière quelle que soit la carte de développement que vous utilisez. Si vous débutez avec l’ESP8266, nous vous recommandons de lire notre guide : Getting Started with the ESP8266.

À l’heure actuelle, il existe une grande variété de cartes de développement avec la puce ESP8266 qui diffèrent par le nombre de GPIO accessibles, la taille, le facteur de forme, etc…

Les cartes ESP8266 les plus utilisées sont l’ESP-01, l’ESP8266-12E NodeMCU Kit, et la Wemos D1 Mini. Pour une comparaison de ces cartes, vous pouvez lire ce guide : Comparaison des cartes de développement Wi-Fi ESP8266.

Pinout ESP8266-01

Si vous utilisez une carte ESP8266-01, vous pouvez utiliser le diagramme GPIO suivant comme référence.

Kit NodeMCU ESP8266 12-E

Le diagramme de brochage du kit NodeMCU ESP8266 12-E est présenté ci-dessous.

Pincement du WeMos D1 Mini

La figure suivante présente le pincement du WeMos D1 Mini.

Télécharger le PDF avec les schémas de brochage de l’ESP8266

Nous avons mis au point un PDF pratique que vous pouvez télécharger et imprimer, afin d’avoir toujours les schémas de l’ESP8266 à côté de vous :

Télécharger le PDF des schémas de brochage  »

Périphériques de l’ESP8266

Les périphériques de l’ESP8266 comprennent :

  • 17 GPIOs
  • SPI
  • I2C (implémenté sur le logiciel)
  • I2S interfaces avec DMA
  • UART
  • 10-.bit ADC

Meilleurs broches à utiliser – ESP8266

Une chose importante à noter sur l’ESP8266 est que le numéro GPIO ne correspond pas à l’étiquette sur la sérigraphie de la carte. Par exemple, D0 correspond au GPIO16 et D1 correspond au GPIO5.

Le tableau suivant montre la correspondance entre les étiquettes sur le silkscreen et le numéro GPIO ainsi que les broches qui sont les meilleures à utiliser dans vos projets, et celles dont vous devez être prudent.

Les broches surlignées en vert sont OK à utiliser. Celles surlignées en jaune sont OK à utiliser, mais vous devez faire attention car elles peuvent avoir un comportement inattendu principalement au démarrage. Les broches surlignées en rouge ne sont pas recommandées pour être utilisées comme entrées ou sorties.

.

.

.

.

Label GPIO Input Output Notes
D0 GPIO16 pas d’interruption pas de support PWM ou I2C HAUT au démarrage
utilisé pour sortir d’un sommeil profond
D1 GPIO5 OK OK souvent utilisé comme SCL (I2C)
D2 GPIO4 OK OK Souvent utilisé comme SDA (I2C)
D3 GPIO0 tiré vers le haut OK connecté au bouton FLASH, le démarrage échoue si tiré vers le BAS
D4 GPIO2 pulsé vers le haut OK HAUT au démarrage
connecté à la LED embarquée, le démarrage échoue si elle est tirée vers le BAS
D5 GPIO14 OK SPI (SCLK)
D6 GPIO12 OK OK SPI (MISO)
D7 GPIO13 OK OK SPI (MOSI)
D8 GPIO15 Tiré vers GND OK SPI (CS)
Boot échoue s’il est tiré vers le haut
RX GPIO3 OK Pince RX Haut au démarrage
TX GPIO1 Pince TX OK Haut au démarrage
Sortie de débogage au démarrage, le boot échoue si elle est tirée vers le BAS
A0 ADC0 Entrée analogique X

Continuez votre lecture pour une analyse plus détaillée et approfondie des GPIO de l’ESP8266 et de ses fonctions.

GPIOs connectés à la puce flash

GPIO6 à GPIO11 sont généralement connectés à la puce flash dans les cartes ESP8266. Il n’est donc pas recommandé d’utiliser ces broches.

Pins utilisés pendant le démarrage

L’ESP8266 peut être empêché de démarrer si certaines broches sont tirées vers le BAS ou le HAUT. La liste suivante indique l’état des broches suivantes lors du BOOT:

  • GPIO16 : la broche est haute au BOOT
  • GPIO0 : échec du boot si tirée LOW
  • GPIO2 : la broche est haute au BOOT, échec du boot si tirée LOW
  • GPIO15 : échec du boot si tirée HIGH
  • GPIO3 : La broche est haute au BOOT
  • GPIO1 : La broche est haute au BOOT, échec du boot si tirée LOW
  • GPIO10 : La broche est haute au BOOT
  • GPIO9 : La broche est haute au BOOT

Pins HIGH at Boot

Il y a certaines broches qui sortent un signal 3.3V lorsque l’ESP8266 démarre. Cela peut être problématique si vous avez des relais ou d’autres périphériques connectés à ces GPIO. Les GPIO suivantes émettent un signal HIGH au démarrage :

  • GPIO16
  • GPIO3
  • GPIO1
  • GPIO10
  • GPIO9

En outre, les autres GPIO, à l’exception de GPIO5 et GPIO4, peuvent émettre un signal basse tension au démarrage, ce qui peut être problématique si ceux-ci sont connectés à des transistors ou des relais. Vous pouvez lire cet article qui étudie l’état et le comportement de chaque GPIO au démarrage.

GPIO4 et GPIO5 sont les GPIO les plus sûrs à utiliser si vous voulez faire fonctionner des relais.

Entrée analogique

L’ESP8266 ne supporte la lecture analogique que dans un seul GPIO. Cette GPIO est appelée ADC0 et elle est généralement marquée sur la sérigraphie comme A0.

La tension d’entrée maximale de la broche ADC0 est de 0 à 1V si vous utilisez la puce nue ESP8266. Si vous utilisez une carte de développement comme le kit NodeMCU ESP8266 12-E, la plage de tension d’entrée est de 0 à 3,3V car ces cartes contiennent un diviseur de tension interne.

Vous pouvez apprendre à utiliser la lecture analogique avec l’ESP8266 grâce au guide suivant :

  • ESP8266 ADC – Lire des valeurs analogiques avec Arduino IDE, MicroPython et Lua

La LED embarquée

La plupart des cartes de développement ESP8266 ont une LED intégrée. Cette LED est généralement connectée à GPIO2.

La LED fonctionne avec une logique inversée. Envoyez un signal HIGH pour l’éteindre, et un signal LOW pour l’allumer.

Pince RST

Lorsque la broche RST est tirée LOW, l’ESP8266 se réinitialise. C’est la même chose que d’appuyer sur le bouton RESET embarqué.

GPIO0

Lorsque GPIO0 est tiré vers le BAS, cela place l’ESP8266 en mode bootloader. C’est la même chose que d’appuyer sur le bouton FLASH/BOOT intégré.

GPIO16

GPIO16 peut être utilisé pour réveiller l’ESP8266 d’un sommeil profond. Pour réveiller l’ESP8266 de son sommeil profond, GPIO16 doit être connecté à la broche RST. Apprenez à mettre l’ESP8266 en mode de sommeil profond:

  • ESP8266 Deep Sleep with Arduino IDE
  • ESP8266 Deep Sleep with MicroPython

I2C

L’ESP8266 n’a pas de broches I2C matérielles, mais il peut être mis en œuvre dans le logiciel. Vous pouvez donc utiliser n’importe quel GPIO comme I2C. Habituellement, les GPIOs suivants sont utilisés comme broches I2C:

  • GPIO5 : SCL
  • GPIO4 : SDA

SPI

Les broches utilisées comme SPI dans l’ESP8266 sont :

  • GPIO12 : MISO
  • GPIO13 : MOSI
  • GPIO14 : SCLK
  • GPIO15 : CS

Pins PWM

L’ESP8266 permet le PWM logiciel dans toutes les broches d’entrée/sortie : GPIO0 à GPIO16. Les signaux PWM de l’ESP8266 ont une résolution de 10 bits. Apprenez à utiliser les broches PWM de l’ESP8266 :

  • ESP8266 PWM avec Arduino IDE
  • ESP8266 PWM avec MicroPython

Pins d’interruption

L’ESP8266 prend en charge les interruptions dans toutes les GPIO, à l’exception de la GPIO16.

  • Interruptions et temporisations de l’ESP8266 avec Arduino IDE

Wrapping Up

Nous espérons que vous avez trouvé ce guide pour les GPIO de l’ESP8266 utile. Si vous avez des conseils sur la façon d’utiliser correctement les GPIO de l’ESP8266, vous pouvez écrire un commentaire ci-dessous.

Nous avons également un guide similaire pour les GPIO de l’ESP32 que vous pouvez lire.

Si vous commencez à utiliser l’ESP8266, nous avons un excellent contenu qui pourrait vous intéresser :

  • La domotique à l’aide de l’ESP8266 (cours)
  • Débuter avec l’ESP8266
  • 30+ projets et tutoriels ESP8266
  • Tutoriel du serveur Web de l’ESP8266
  • ESP32 vs ESP8266 – Avantages et inconvénients

Merci de votre lecture.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.