Préparation atelier Objets connectés, installation des postes
IDE Arduino
Télécharger l' IDE Arduino
https://www.arduino.cc/en/software/, version 2.3.6
l'installer, pour tous les utilisateurs, et lancer.
Valider tous les compléments d'installation proposés.
Vérifier que l'esp32 est bien reconnu sur le port COM, avec le gestionnaire de périphérique.
Dans le menu "board manager", installer esp32 by Espressif Systems (et non Arduino esp32 boards), et valider toutes les demandes
Puis choisir la carte dans Outils > Type de carte > ESP32 > ESP32 Dev Module
installation des bibliothèques
installer la bibliothèque TFT_eSPI
remplacer le fichier C:\Users\Memoire Vive2\Documents\Arduino\libraries\TFT_eSPI\User_Setup.h par celui-ci,
// User_Setup.h for ESP32 + ST7796 donné par chatGPT #define ST7796_DRIVER // Définir le driver de ton écran #define TFT_WIDTH 320 #define TFT_HEIGHT 480 // SPI pins (à adapter si tu utilises d'autres GPIO) #define TFT_MISO -1 // pas de lecture MISO #define TFT_MOSI 13 #define TFT_SCLK 14 #define TFT_CS 15 #define TFT_DC 2 #define TFT_RST 4 // mettre -1 si connecté au reset de l'ESP32 // Backlight pin #define TFT_BL 27 // LED backlight #define TFT_BACKLIGHT_ON HIGH // SPI fréquence #define SPI_FREQUENCY 20000000 // 20 MHz, stable pour ST7796 #define SPI_READ_FREQUENCY 10000000 // lecture (si utilisée) #define SPI_TOUCH_FREQUENCY 2500000 // écran tactile si applicable // Couleurs et ordre RGB #define TFT_RGB_ORDER TFT_BGR // Fonts à charger (optionnel) #define LOAD_GLCD #define LOAD_FONT2 #define LOAD_FONT4 #define LOAD_FONT6 #define LOAD_FONT7 #define LOAD_FONT8 #define LOAD_GFXFF #define SMOOTH_FONT
tester ce premier code
#include <TFT_eSPI.h>
TFT_eSPI tft = TFT_eSPI(); // Crée un objet pour l'écran
void setup() {
tft.init(); // Initialisation de l'écran
tft.setRotation(1); // Orientation de l'écran
tft.fillScreen(TFT_BLACK); // Fond noir
tft.setTextColor(TFT_WHITE);
tft.setTextSize(3); // Taille du texte
tft.setCursor(50, 100); // Position du texte
tft.println("Hello ESP32!");
}
void loop() {
// Rien à faire ici
}