Pourquoi une même carte peut avoir un contrôleur différent
Les cartes d’affichage bon marché sont construites avec des dalles achetées sur le marché libre. Quand un lot change de fournisseur, le contrôleur peut changer aussi, alors que le nom de la carte, le circuit imprimé et le brochage restent les mêmes. L’ESP32-2432S028R (Cheap Yellow Display) et l’ESP32-2432S024 existent tous deux en versions ILI9341 et ST7789.
L’identifier par les symptômes
Ce que vous voyez avec une configuration ILI9341 | Cause probable | Correctif |
|---|---|---|
Écran blanc ou vide, rétroéclairage allumé | Le contrôleur est un ST7789 | Passer au pilote ST7789 |
L’image apparaît, couleurs en négatif | La dalle ST7789 nécessite l’inversion | Basculer l’inversion ( |
Rouge et bleu permutés | Ordre des couleurs | Régler l’ordre BGR ( |
Image en miroir ou décalée | Réglage de rotation / d’accès mémoire | Changer la rotation (MADCTL) |
Tout est sombre | Broche de rétroéclairage erronée ou réutilisée | Vérifier la GPIO de rétroéclairage |
Changez un réglage à la fois et gardez un exemple fonctionnel pour comparer.
L’identifier en lisant l’ID
Si la carte relie la ligne MISO de la dalle, vous pouvez lire l’ID du contrôleur au lieu de deviner. Un ILI9341 répond 0x9341 à la commande Read ID4 (0xD3). Dans TFT_eSPI, tft.readcommand8(0xD3, n) lit l’octet n d’un registre. Si vous n’obtenez pas 0x93 et 0x41, essayez le pilote ST7789. Les cartes sans MISO ne peuvent pas être lues : utilisez le tableau des symptômes.
Réglages qui diffèrent
Élément | ILI9341 | ST7789 |
|---|---|---|
Pilote TFT_eSPI | | |
LovyanGFX | | |
ESP-IDF | | |
Inversion | généralement désactivée | souvent activée |
Des modèles pour les deux figurent sur les pages ILI9341 et ST7789V.
L’éviter dans un produit
Pour un produit, spécifiez un module dont la fiche technique nomme le contrôleur et dont le fournisseur le fige par lot de production, afin que le firmware ne casse pas d’un lot à l’autre. Notre module SPI 2,8 pouces 240×320 utilise un ST7789V spécifié ; échantillons dès 1 pce.
Questions fréquentes
Un code ILI9341 peut-il fonctionner sur un ST7789 ?
Pas de façon fiable. Ce sont deux contrôleurs 240×320, mais la séquence d’initialisation diffère : changez de pilote plutôt que de bricoler le code ILI9341.
Pourquoi les couleurs de mon afficheur ST7789 sont-elles inversées ?
Beaucoup de dalles ST7789 nécessitent l’inversion d’affichage (INVON). Activez TFT_INVERSION_ON ou appelez tft.invertDisplay(true).
Comment lire l’ID du contrôleur ?
Avec MISO connectée, lisez le registre 0xD3 (Read ID4) : un ILI9341 renvoie 0x93 0x41. Sans MISO, identifiez-le par les symptômes.

