ESP32-2432S028R (CYD) ディスプレイ:仕様、ドライバのリビジョン、設定
Cheap Yellow Display:ESP32 ボードに 2.8 インチ 240×320 SPI TFT を載せたものです。ロットによって ILI9341 または ST7789 のディスプレイコントローラが搭載されているため、同じスケッチがあるボードでは動き、別のボードでは白画面になることがあります。
ESP32-2432S028R (CYD) のディスプレイ仕様
| MCU | ESP32 (ESP32-WROOM-32) |
|---|---|
| ディスプレイ | 2.8″ · 240×320 |
| 表示バス | SPI (HSPI) |
| ドライバ IC | ILI9341 または ST7789 |
| タッチ | XPT2046 抵抗膜式(SPI ピンは別系統) |
お手元の ESP32-2432S028R (CYD) はどのリビジョンですか?
同じ名前で販売されているボードでも、搭載されるディスプレイドライバ IC が異なります。あるリビジョン用のコードを別のリビジョンで動かすと、白画面、色化け、または何も表示されないことがあるため、まずお手元のリビジョンを確認してください。
| リビジョン | ドライバ IC | 見分け方 | ライブラリ設定 |
|---|---|---|---|
| 初期版(micro-USB) | ILI9341 | コミュニティの User_Setup.h をそのまま使える | TFT_eSPI:ILI9341_2_DRIVER、反転なし |
| 後期ロット(一部は USB ポート 2 つ) | ST7789 | ILI9341 の設定では白画面、色あせ、色反転が起きる | TFT_eSPI:ST7789_DRIVER。TFT_INVERSION_ON/OFF と TFT_RGB_ORDER TFT_BGR を 1 つずつ試す。バックライトは GPIO 21 のまま |
ESP32-2432S028R (CYD) のディスプレイ・タッチのピン
| 信号 | GPIO | 備考 |
|---|---|---|
| TFT MOSI | 13 | HSPI |
| TFT MISO | 12 | HSPI |
| TFT SCLK | 14 | HSPI |
| TFT CS | 15 | |
| TFT DC | 2 | |
| TFT RST | -1 | GPIO に未接続 |
| Backlight | 21 | アクティブ High。別用途に使わない |
| Touch CLK | 25 | XPT2046 |
| Touch CS | 33 | XPT2046 |
| Touch DIN (MOSI) | 32 | XPT2046 |
| Touch DO (MISO) | 39 | XPT2046 |
| Touch IRQ | 36 | XPT2046 |
量産向けに同仕様のディスプレイ
ESP32-2432S028R (CYD) で試作しましたか?これらの直営工場製モジュールはパネルサイズと解像度が同じで、データシート付き、生産ロットごとにドライバ IC を固定しており、1 個からサンプル提供が可能です。最小発注数量と納期は案件ごとに協議します。
ESP32-2432S028R(CYD)の試作から量産へ
開発ボードは UI の検証には最適ですが、そのパネルはオープンマーケットで調達されています。ロット間でコントローラが変わることがあり(このボードでは実際に起きています)、データシートはほとんどなく、寿命も保証されません。製品には、生産ロットごとにドライバ IC が固定され、データシートとライフサイクルの確約があるモジュールを指定してください。
当社直営工場では同じ 2.8″ 240×320 フォーマットのモジュールを製造しています。サンプルは 1 個から。MOQ と納期はプロジェクトごとに営業チームと取り決めます。
コードをデバッグする前に
- お使いのリビジョンを確認してください(上の表)。ドライバ IC の変更が白画面の最も多い原因です。
- スケッチでバックライトピンを別の用途に使っていないか確認してください。
- 設定(ドライバ、反転、色順)は 1 つずつ変更し、比較用に動作実績のある例を手元に残しておいてください。
設定例
#define ILI9341_2_DRIVER
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
#define TFT_BL 21
#define TFT_BACKLIGHT_ON HIGH
#define TFT_MISO 12
#define TFT_MOSI 13
#define TFT_SCLK 14
#define TFT_CS 15
#define TFT_DC 2
#define TFT_RST -1
#define SPI_FREQUENCY 55000000
#define SPI_READ_FREQUENCY 20000000
#define SPI_TOUCH_FREQUENCY 2500000
#define USE_HSPI_PORT// replace the ILI9341_2_DRIVER line with:
#define ST7789_DRIVER
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
// if colours are inverted, toggle ONE of these:
#define TFT_INVERSION_ON
// #define TFT_INVERSION_OFF
// if red and blue are swapped:
// #define TFT_RGB_ORDER TFT_BGR
// pins and SPI settings stay the same as the ILI9341 setupよくある質問
他の人の環境で動くコードなのに、CYD が白画面になるのはなぜですか?
お使いのボードは ILI9341 ではなく ST7789 のディスプレイコントローラを搭載している可能性があります。TFT_eSPI のドライバを ST7789_DRIVER に変更し、反転と色順を調整してください。ピンはそのままです。
CYD のバックライトを制御する GPIO は?
GPIO 21、アクティブ High です。スケッチで GPIO 21 を別の用途に使うと画面が暗くなります。
CYD で TFT_eSPI のタッチが動かないのはなぜですか?
XPT2046 タッチコントローラはディスプレイの SPI バスではなく専用のピン(CLK 25、CS 33、DIN 32、DO 39、IRQ 36)に接続されているため、それらのピンで別の XPT2046 ライブラリのインスタンスを使ってください。
出典
どのディスプレイが設計に合うか迷っていませんか?
サイズ、インターフェース、ホストプロセッサをお知らせください。ディスプレイエンジニアが 12 時間以内に、データシートと初期化コード付きで 2〜3 件の候補をお返しします。サンプルは 1 個から。

