Introduction à l'ESP32-S3
ESP32-S3 est un microcontrôleur SoC (System-on-Chip) commercialisé par Espressif, intégrant les fonctionnalités Wi-Fi 2,4 GHz et Bluetooth 5 (LE), y compris la prise en charge longue portée. Il est équipé d'un puissant processeur double cœur Xtensa® 32 bits LX7, cadencé à 240 MHz, et dispose de 512 Ko de mémoire SRAM (TCM) intégrée. De plus, la puce offre 45 broches GPIO programmables et une large gamme d'interfaces de communication. L'ESP32-S3 prend également en charge une mémoire flash SPI octale haute vitesse plus grande et une RAM externe, permettant aux utilisateurs de configurer la mise en cache des données et des instructions pour améliorer les performances.

Brochage ESP32-S3-DevKitC-1
L'ESP32-S3-DevKitC est une carte de développement basée sur le module ESP32-S3-WROOM-1. Elle est conçue pour aider les développeurs à prototyper et tester leurs projets avec le microcontrôleur de la série ESP32-S3. La carte offre une variété de fonctionnalités matérielles et de broches qui peuvent être utilisées pour connecter des périphériques et des capteurs. Vous trouverez ci-dessous une présentation du brochage de l'ESP32-S3-DevKitC :

Description du brochage
| Broche | Description |
|---|---|
| Module ESP32-S3-WROOM-1 | Module principal avec microcontrôleur, Wi-Fi et Bluetooth. |
| Pont USB-UART | Permet la communication USB avec le module ESP32-S3. |
| Port USB | Alimentation et connexion série via USB. |
| Bouton BOOT | Place l'ESP32-S3 en mode chargeur de démarrage (bootloader) pour le téléversement du micrologiciel. |
| Bouton EN | Réinitialise le module ESP32-S3. |
| Boutons utilisateur | Deux boutons destinés à des fonctions définies par l'utilisateur. |
| DEL utilisateur | DEL contrôlées par l'ESP32-S3 pour un retour visuel. |
| Broches GPIO | Broches d'entrée/sortie généralistes pour diverses fonctions. |
| Broches d'entrée analogique | Broches pour lire les signaux analogiques des capteurs. |
| Broches I2C | Broches pour la communication I2C avec des capteurs. |
| Broches SPI | Broches pour la communication à haute vitesse avec des périphériques. |
| Broches UART | Broches pour la communication série avec d'autres appareils. |
| Fente pour carte SD | Emplacement pour l'interfaçage avec des cartes SD. |
| Connecteur JTAG | Connecteur pour le débogage et la programmation avancés. |
| Broches d'alimentation | Broches pour les connexions 3.3V et GND (masse). |
Processeur Xtensa LX7 32 bits
En ce qui concerne cette puce, vous vous posez peut-être des questions sur son processeur double cœur Xtensa 32 bits LX7 intégré, car la plupart des puces embarquées que nous voyons couramment sont principalement basées sur ARM. Xtensa est différent des cœurs ARM ; les processeurs de la série Xtensa LX offrent une forte reconfigurabilité et évolutivité, ce qui en fait un choix idéal pour les applications complexes et intensives de traitement des signaux numériques. Grâce à la technologie Xtensa, les ingénieurs concepteurs de systèmes peuvent sélectionner l'architecture souhaitée et créer de nouvelles instructions et unités d'exécution matérielles afin de concevoir des cœurs de processeur nettement plus puissants que ceux basés sur les méthodes traditionnelles. Le générateur Xtensa peut produire efficacement un ensemble complet d'outils logiciels, y compris un système d'exploitation, adaptés à la combinaison spécifique de chaque processeur. La nature personnalisable des processeurs Xtensa offre une grande flexibilité de conception et une efficacité élevée, ce qui en fait le choix optimal pour tous les systèmes monopuces hautement synthétisés. En combinant la reconfigurabilité matérielle et la programmation logicielle, les processeurs Xtensa améliorent non seulement les performances de calcul, mais offrent également une mise en œuvre facile à des fins de contrôle.

Applications de l'ESP32-S3
La puce basse consommation ESP32-S3 est spécialement conçue pour les appareils connectés à l'Internet des objets (IoT) et offre un large éventail d'applications. On peut affirmer sans risque de se tromper que presque tous les produits électroniques grand public actuellement disponibles sur le marché peuvent l'utiliser. Par exemple, les appareils électroménagers tels que les climatiseurs ou les cuiseurs à riz peuvent en être équipés pour permettre leur contrôle à distance et leur connectivité. Voici quelques domaines d'application spécifiques :
- Appareils électroménagers intelligents
- Hub universel de capteurs IoT à faible consommation
- Industrie automatisée
- Enregistreur de données IoT universel à faible consommation
- Assurance médicale
- Diffusion vidéo par caméra
- Électronique grand public
- Périphérique USB
- Agriculture intelligente
- Reconnaissance vocale
- Terminal de point de vente
- Identification d'images
- Robot de service
- Carte réseau Wi-Fi + Bluetooth
- Équipement audio
- Capteurs tactiles et de proximité
ESP32-S3 vs STM32
L'ESP32-S3 représente une évolution dans la conception des puces par rapport à la série STM32. Alors que les puces STM32 jouissent d'une réputation bien établie et sont largement utilisées dans diverses applications, la série ESP32 s'est stratégiquement positionnée en tête de peloton. En intégrant directement les fonctionnalités WiFi et Bluetooth dans le système sur puce (SoC), l'ESP32-S3 répond à la demande croissante d'appareils intelligents et connectés à l'ère de l'IoT.
Si les puces STM32 sont des microcontrôleurs puissants et polyvalents, elles peuvent nécessiter des composants ou des modules supplémentaires pour permettre la connectivité WiFi et Bluetooth. En revanche, l'ESP32-S3 offre la commodité d'une communication sans fil intégrée, réduisant ainsi le besoin de composants externes et simplifiant le processus de conception des applications IoT. Une comparaison des schémas fonctionnels de l'ESP32-S3 et du STM32F103XX permettrait de mettre en évidence cette avancée.


La décision d'Espressif d'équiper dès le départ l'ESP32 de fonctionnalités WiFi et Bluetooth lui a permis de tirer parti des nouvelles tendances et de répondre aux besoins changeants de l'industrie électronique. Avec l'importance croissante de la connectivité Internet et des communications sans fil, les fonctionnalités intégrées de l'ESP32-S3 répondent parfaitement aux exigences des produits électroniques modernes.
De plus, la série ESP32-S3 offre non seulement le WiFi et le Bluetooth, mais aussi des améliorations en termes de performances, d'efficacité énergétique et de facilité d'utilisation. Bien que la série STM32 puisse encore présenter certains avantages en termes de performances brutes et de stabilité, l'ESP32-S3 rattrape rapidement son retard et a déjà gagné en popularité dans diverses applications IoT et appareils connectés.
Fabrication d'une carte à microcontrôleur avec ESP32-S3
Pour appliquer la puce ESP32-S3 à des produits pratiques, elle doit être encapsulée et complétée par des circuits périphériques et des ports d'E/S de communication pour la communication avec des appareils externes. Par exemple, pour créer un dispositif de contrôle d'accès par reconnaissance faciale, une interface caméra est nécessaire pour connecter une caméra externe pour l'acquisition et le traitement d'images, un circuit d'antenne pour la connectivité WiFi ou Bluetooth, et une mémoire flash SPI pour stocker de grandes quantités de données. La figure suivante est le schéma officiel du circuit, qui comprend généralement environ 20 résistances, condensateurs, inductances, un oscillateur à quartz passif et une mémoire flash SPI.

Si vous trouvez la conception de ces circuits difficile, vous pouvez opter pour des modules ESP32-S3 pré-conçus et pré-assemblés. L'utilisation de modules peut raccourcir notre cycle de développement, mais cela peut entraîner un coût plus élevé. Nous pouvons également développer des modules en suivant le schéma officiel fourni par Espressif. Les modules officiellement commercialisés par Espressif sont présentés dans l'image suivante.


Les modules commercialisés par Espressif seront disponibles en différents modèles. En réalité, la puce centrale est la même que celle de l'ESP32-S3. La différence entre les différents modèles réside dans la taille de la mémoire Flash et de la PSRAM hors puce. Le modèle avec la configuration la plus élevée officiellement commercialisé est l'ESP32-S3-WROOM-1-N16R8, qui dispose de 16 Mo de mémoire Flash et de 8 Mo de mémoire PSRAM. Je pense que cette configuration est suffisante pour notre développement :
| Modèle | Flash² | PSRAM | Température ambiante (℃) | Taille du module (mm) |
|---|---|---|---|---|
| ESP32-S3-WROOM-1-N4 | 4 MB (Quad SPI) | - | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N8 | 8 MB (Quad SPI) | - | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N16 | 16 MB (Quad SPI) | - | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-H4 | 4 MB (Quad SPI) | - | -40~105 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N4R2 | 4 MB (Quad SPI) | 2 MB (Quad SPI) | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N8R2 | 8 MB (Quad SPI) | 2 MB (Quad SPI) | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N16R2 | 16 MB (Quad SPI) | 2 MB (Quad SPI) | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N4R8 | 4 MB (Quad SPI) | 8 MB (Octal SPI) | -40~65 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N8R8 | 8 MB (Quad SPI) | 8 MB (Octal SPI) | -40~65 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N16R8 | 16 MB (Quad SPI) | 8 MB (Octal SPI) | -40~65 | 18.0 * 25.5 * 3.1 |
Nous pouvons utiliser ces modules packagés pour concevoir une carte micro-ordinateur à puce unique dotée de fonctions spécifiques. Si vous souhaitez créer une carte de développement avec des fonctions générales, la méthode courante consiste à faire sortir toutes les E/S du module, afin que les utilisateurs puissent l'utiliser selon leurs besoins. Vous pouvez connecter vous-même des périphériques externes. J'ai donc conçu une mini-carte de développement ESP32-S3 à usage général, comme le montre la figure ci-dessous :
Carte d'extension de conception avec ESP32-S3
Toutes les cartes de développement ne nécessitent pas la conception de cartes d'extension. Il suffit de concevoir directement les interfaces externes correspondantes lors de la conception de la carte de développement. Mais cela pose un problème. Si nous devons fabriquer d'autres produits, il faut repenser entièrement la carte de développement, ce qui entraîne une perte de temps et des coûts matériels supplémentaires. Mon idée est que notre carte de développement principale reste inchangée et que nous puissions concevoir des cartes d'extension avec des interfaces correspondantes en fonction des besoins du produit, afin que notre temps de développement soit beaucoup plus rapide, car il est très facile de concevoir des cartes d'interface externes. Une autre raison est que si certaines fonctions de notre carte principale tombent en panne et ne peuvent être réparées, nous n'avons besoin que d'une meilleure carte principale et nous n'avons pas besoin d'apporter de modifications aux cartes d'extension connectées à des périphériques externes.
Ici, afin de faciliter notre apprentissage et le développement de l'ESP32-S3, nous utiliserons différentes fonctions. Il est impossible de mettre toutes ces fonctions sur une seule carte de développement, ce qui entraînerait un coût trop élevé. Il sera beaucoup plus pratique de choisir des cartes d'extension moins coûteuses et ne comportant que des fonctions spécifiques en fonction des différents besoins d'apprentissage. Cela nous permettra de démarrer plus facilement. J'ai d'abord conçu une carte d'extension qui connecte divers capteurs, comme le montre la figure ci-dessous :
Contrôles pratiques de conception : ESP32-S3, USB, flash et démarrage
Utilisez cette liste pour valider la conception avant fabrication ou remplacement de composants.
Liste de contrôle pratique
- Vérifiez les broches de strapping, le routage USB D+/D−, les variantes flash/PSRAM, la temporisation de réinitialisation EN et la marge de l’alimentation 3,3 V avant de finaliser le PCB.
- Routez les signaux USB rapides comme une paire différentielle contrôlée, avec des dérivations courtes et un plan de référence continu.
- Prévoyez des points de test UART, USB, EN, BOOT et masse afin de conserver une possibilité de récupération du firmware après assemblage.
Sources officielles Espressif :




