Chargement de la figure…
Wi-Fi, Bluetooth LE et deux cœurs à 240 MHz sur une carte 3,3 V pour platine d'essai
Chaque leçon fait tourner votre propre code sur la carte. Réussissez ses vérifications pour la valider.
Montez la carte dans le bon ordre, puis mettez-la sous tension et vérifiez-la, comme sur l'établi.
0 étapes sur 11Partez de la carte noire à deux couches, sans rien dessus. Chaque composant revient dans l'ordre qu'utilise une usine.
Chaque panne se produit vraiment dans la simulation. Déclenchez-en une, regardez la figure, puis lisez pourquoi.
La carte ESP32-S3 d'Espressif elle-même : un module ESP32-S3-WROOM-1 (Xtensa LX7 double cœur à 240 MHz, 512 KB de SRAM, 8 MB de flash, 8 MB de PSRAM, Wi-Fi et Bluetooth 5 LE) sur une carte de 25,4 x 62,7 mm avec deux ports micro-USB. Le port UART passe par un pont CP2102N vers l'UART0, là où vivent par défaut les téléversements et Serial ; le port USB est l'USB full-speed propre à la puce, sur GPIO19/20. Un régulateur SGM2212 produit 3,3 V à partir de l'USB, la LED rouge D5 montre que le 3,3 V est présent, et une LED RGB adressable est sur GPIO38 (GPIO48 sur l'ancienne v1.0). Tous les GPIO sont uniquement en 3,3 V : ne leur envoyez jamais de 5 V.
| Connecteur | Broche | Nom | Fonctions | Niveau | Courant max | Remarques |
|---|---|---|---|---|---|---|
| J1 | 1 | 3V3 | – | 3,3 V | – | Sortie 3,3 V du régulateur (jusqu'à environ 800 mA moins ce que consomme la carte), ou entrée 3,3 V en l'absence d'USB. |
| J1 | 2 | 3V3 | – | 3,3 V | – | |
| J1 | 3 | RST | CHIP_PU, EN | 3,3 V | – | EN (CHIP_PU). Tirée à l'état haut par R5 (10 kΩ) avec un retard de 1 µF sur C6. Mettez-la à l'état bas pour maintenir la puce en reset ; RESET fait la même chose. |
| J1 | 4 | 4 | RTC_GPIO4, TOUCH4, ADC1_CH3 | 3,3 V | 20 mA | Utilisée par les leçons pour la LED (avec 330 Ω). Canal ADC1, fonctionne quand le Wi-Fi est actif, et pastille tactile. |
| J1 | 5 | 5 | RTC_GPIO5, TOUCH5, ADC1_CH4 | 3,3 V | 20 mA | |
| J1 | 6 | 6 | RTC_GPIO6, TOUCH6, ADC1_CH5 | 3,3 V | 20 mA | |
| J1 | 7 | 7 | RTC_GPIO7, TOUCH7, ADC1_CH6 | 3,3 V | 20 mA | |
| J1 | 8 | 15 | RTC_GPIO15, U0RTS, ADC2_CH4, XTAL_32K_P | 3,3 V | 20 mA | |
| J1 | 9 | 16 | RTC_GPIO16, U0CTS, ADC2_CH5, XTAL_32K_N | 3,3 V | 20 mA | |
| J1 | 10 | 17 | RTC_GPIO17, U1TXD, ADC2_CH6 | 3,3 V | 20 mA | |
| J1 | 11 | 18 | RTC_GPIO18, U1RXD, ADC2_CH7, CLK_OUT3 | 3,3 V | 20 mA | |
| J1 | 12 | 8 | RTC_GPIO8, TOUCH8, ADC1_CH7, SUBSPICS1, I2C SDA (Arduino default) | 3,3 V | 20 mA | SDA I2C par défaut d'Arduino (Wire.begin(8, 9)). |
| J1 | 13 | 3 | RTC_GPIO3, TOUCH3, ADC1_CH2, Broche de strapping | 3,3 V | 20 mA | Broche de strapping (choix de la source JTAG). Laissez-la flottante au reset. |
| J1 | 14 | 46 | GPIO46, Broche de strapping | 3,3 V | 20 mA | Broche de strapping. Doit être à l'état bas au reset pour le mode téléchargement ; ne la maintenez jamais à l'état haut pendant un téléversement. |
| J1 | 15 | 9 | RTC_GPIO9, TOUCH9, ADC1_CH8, FSPIHD, SUBSPIHD, I2C SCL (Arduino default) | 3,3 V | 20 mA | |
| J1 | 16 | 10 | RTC_GPIO10, TOUCH10, ADC1_CH9, FSPICS0, FSPIIO4, SUBSPICS0, SPI SS (Arduino default) | 3,3 V | 20 mA | |
| J1 | 17 | 11 | RTC_GPIO11, TOUCH11, ADC2_CH0, FSPID, FSPIIO5, SUBSPID, SPI MOSI (Arduino default) | 3,3 V | 20 mA | |
| J1 | 18 | 12 | RTC_GPIO12, TOUCH12, ADC2_CH1, FSPICLK, FSPIIO6, SUBSPICLK, SPI SCK (Arduino default) | 3,3 V | 20 mA | |
| J1 | 19 | 13 | RTC_GPIO13, TOUCH13, ADC2_CH2, FSPIQ, FSPIIO7, SUBSPIQ, SPI MISO (Arduino default) | 3,3 V | 20 mA | |
| J1 | 20 | 14 | RTC_GPIO14, TOUCH14, ADC2_CH3, FSPIWP, FSPIDQS, SUBSPIWP | 3,3 V | 20 mA | |
| J1 | 21 | 5V | – | 5 V | – | VCC_5V : sortie d'environ 4,6 V depuis l'USB après les Schottky, ou une entrée 5 V sans protection. |
| J1 | 22 | G | – | – | – | |
| J3 | 1 | G | – | – | – | |
| J3 | 2 | TX | U0TXD, CLK_OUT1 | 3,3 V | 20 mA | TX de l'UART0, câblé au CP2102N. Les affichages de Serial sortent ici ; laissez-la libre. |
| J3 | 3 | RX | U0RXD, CLK_OUT2 | 3,3 V | 20 mA | RX de l'UART0 depuis le CP2102N. Les téléversements arrivent ici ; laissez-la libre. |
| J3 | 4 | 1 | RTC_GPIO1, TOUCH1, ADC1_CH0 | 3,3 V | 20 mA | |
| J3 | 5 | 2 | RTC_GPIO2, TOUCH2, ADC1_CH1 | 3,3 V | 20 mA | |
| J3 | 6 | 42 | MTMS | 3,3 V | 20 mA | |
| J3 | 7 | 41 | MTDI, CLK_OUT1 | 3,3 V | 20 mA | |
| J3 | 8 | 40 | MTDO, CLK_OUT2 | 3,3 V | 20 mA | |
| J3 | 9 | 39 | MTCK, CLK_OUT3, SUBSPICS1 | 3,3 V | 20 mA | |
| J3 | 10 | 38 | FSPIWP, SUBSPIWP, RGB LED data (v1.1) | 3,3 V | 20 mA | Pilote la LED RGB (données WS2812) sur la v1.1. Utilisable comme GPIO, mais la LED réagira. |
| J3 | 11 | 37 | SPIDQS, FSPIQ, SUBSPIQ | 3,3 V | – | GPIO37 est imprimé sur le connecteur, mais sur ce module N8R8 il est câblé à la PSRAM octale. L'utiliser fait planter la carte. |
| J3 | 12 | 36 | SPIIO7, FSPICLK, SUBSPICLK | 3,3 V | – | GPIO36 est imprimé sur le connecteur, mais sur ce module N8R8 il est câblé à la PSRAM octale. L'utiliser fait planter la carte. |
| J3 | 13 | 35 | SPIIO6, FSPID, SUBSPID | 3,3 V | – | GPIO35 est imprimé sur le connecteur, mais sur ce module N8R8 il est câblé à la PSRAM octale. L'utiliser fait planter la carte. |
| J3 | 14 | 0 | RTC_GPIO0, BOOT button, Broche de strapping | 3,3 V | 20 mA | Broche de strapping avec le bouton BOOT vers GND. À l'état haut au reset, elle démarre votre sketch ; à l'état bas, elle entre en mode téléchargement. Sans risque à lire comme un bouton après le démarrage. |
| J3 | 15 | 45 | GPIO45, Broche de strapping | 3,3 V | 20 mA | Broche de strapping (choix de la tension de la flash). Gardez-la à l'état bas ou flottante au reset. |
| J3 | 16 | 48 | SPICLK_N, SUBSPICLK_N_DIFF, RGB LED data (v1.0) | 3,3 V | 20 mA | Données de la LED RGB sur les cartes v1.0 seulement. Fonctionne en 1,8 V sur les modules à PSRAM 1,8 V. |
| J3 | 17 | 47 | SPICLK_P, SUBSPICLK_P_DIFF | 3,3 V | 20 mA | Fonctionne en 1,8 V sur les modules à PSRAM 1,8 V ; en 3,3 V sur ce N8R8. |
| J3 | 18 | 21 | RTC_GPIO21 | 3,3 V | 20 mA | |
| J3 | 19 | 20 | RTC_GPIO20, U1CTS, ADC2_CH9, CLK_OUT1, USB_D+ | 3,3 V | 20 mA | D+ USB du port USB. L'utiliser comme GPIO coupe la connexion USB native. |
| J3 | 20 | 19 | RTC_GPIO19, U1RTS, ADC2_CH8, CLK_OUT2, USB_D- | 3,3 V | 20 mA | D− USB du port USB. L'utiliser comme GPIO coupe la connexion USB native. |
| J3 | 21 | G | – | – | – | |
| J3 | 22 | G | – | – | – |
Les capteurs et actionneurs que pilote cette carte, avec les vrais branchements.
N'importe quel GPIO libre à travers une résistance de 330 Ω : (3,3 − 2,0) V / 330 Ω font environ 4 mA, bien en dessous des 20 mA qu'une broche fournit par défaut.
| Broche du composant | Broche de la carte |
|---|---|
| A (through 330 Ω) | 4Couleur du fil : orange |
| K | GCouleur du fil : noir |
Bouton entre GPIO5 et G avec pinMode(5, INPUT_PULLUP) : il lit LOW quand on appuie. Évitez GPIO0, 3, 45 et 46 pour des boutons qui pourraient être maintenus à la mise sous tension.
| Broche du composant | Broche de la carte |
|---|---|
| 1 | 5Couleur du fil : jaune |
| 2 | GCouleur du fil : noir |
Les extrémités sur 3V3 et G, le curseur sur GPIO1 (ADC1). analogRead() donne 0-4095, analogReadMilliVolts() la tension étalonnée.
| Broche du composant | Broche de la carte |
|---|---|
| 1 | 3V3Couleur du fil : rouge |
| wiper | 1Couleur du fil : vert |
| 3 | GCouleur du fil : noir |
Utilisez les broches ADC1 (GPIO1-10) quand le Wi-Fi est actif : l'ADC2 (GPIO11-20) ne peut pas être lu pendant que la radio tourne. Ne reliez jamais les extrémités au 5V.
Photorésistance du 3V3 vers GPIO2 et 10 kΩ de GPIO2 vers G : plus de lumière, lecture plus haute.
| Broche du composant | Broche de la carte |
|---|---|
| LDR leg 1 | 3V3Couleur du fil : rouge |
| LDR leg 2 + 10 kΩ to G | 2Couleur du fil : vert |
| 10 kΩ | GCouleur du fil : noir |
Signal sur GPIO18 à 50 Hz (ledcAttach(18, 50, 14) ou la bibliothèque ESP32Servo). Le signal 3,3 V suffit au SG90.
| Broche du composant | Broche de la carte |
|---|---|
| brown (GND) | GCouleur du fil : marron |
| red (V+) | 5VCouleur du fil : rouge |
| orange (signal) | 18Couleur du fil : orange |
N'alimentez le servo par la broche 5V que pour un seul petit servo sur un bon port USB ; son courant de démarrage peut provoquer un brown-out de la carte. Les charges plus grosses ont besoin de leur propre alimentation, avec une masse commune.
TRIG sur GPIO5, ECHO sur GPIO6, VCC sur 5V.
| Broche du composant | Broche de la carte |
|---|---|
| VCC | 5VCouleur du fil : rouge |
| TRIG | 5Couleur du fil : jaune |
| ECHO (through 1 kΩ / 2 kΩ divider) | 6Couleur du fil : vert |
| GND | GCouleur du fil : noir |
ECHO est un signal 5 V : placez un pont diviseur 1 kΩ / 2 kΩ devant GPIO6 (environ 3,3 V) ou utilisez un capteur 3,3 V comme le HC-SR04P. Un 5 V direct abîme la broche.
I2C sur SDA GPIO8 et SCL GPIO9 avec Wire.begin(8, 9) ; adresse 0x68. Le régulateur du module fonctionne très bien sur le 3V3.
| Broche du composant | Broche de la carte |
|---|---|
| VCC | 3V3Couleur du fil : rouge |
| GND | GCouleur du fil : noir |
| SDA | 8Couleur du fil : bleu |
| SCL | 9Couleur du fil : jaune |
OLED 128 x 64 en I2C (GPIO8, GPIO9), adresse 0x3C, alimenté par le 3V3.
| Broche du composant | Broche de la carte |
|---|---|
| VCC | 3V3Couleur du fil : rouge |
| GND | GCouleur du fil : noir |
| SDA | 8Couleur du fil : bleu |
| SCL | 9Couleur du fil : jaune |
Buzzer passif entre GPIO7 et G, piloté avec tone(7, 440) ou ledcWriteTone().
| Broche du composant | Broche de la carte |
|---|---|
| + | 7Couleur du fil : orange |
| − | GCouleur du fil : noir |
Fonctionne dès 2,7 V, le 3V3 convient donc. Lisez GPIO1 avec analogReadMilliVolts(1) : °C = (mV − 500) / 10.
| Broche du composant | Broche de la carte |
|---|---|
| +Vs | 3V3Couleur du fil : rouge |
| Vout | 1Couleur du fil : vert |
| GND | GCouleur du fil : noir |