24-03-2025, 04:34 PM
Bonjour à tous,
J'ai enfin réussi à afficher quelque chose sur mon module ESP32 avec écran JC2432W328C (dalle capacitive) avec la version 14.02 en mettant les parametres suivants dans le fichier "Ecran.h"
class LGFX : public lgfx::LGFX_Device {
//lgfx:
anel_ILI9341 _panel_instance;
lgfx:
anel_ST7789 _panel_instance;
...
#define LCD_MOSI 13
#define LCD_MISO 12
#define LCD_SCK 14
#define LCD_CS 15
#define LCD_RST -1
#define LCD_DC 2
#define LCD_BL 27
Du coup la page d'accueil s'affiche bien, par contre le touchpad ne fonctionne pas!
Bon ce n'est pas le même controleur que celui de l'ESP32-2432S028R
Celui de mon module semble être un CST820 qui se branche en I2C et non pas en SPI
Voici donc les modifications que j'ai apporté mais qui ne semblent pas donner de résultat
class LGFX : public lgfx::LGFX_Device {
//lgfx:
anel_ILI9341 _panel_instance;
lgfx:
anel_ST7789 _panel_instance;
lgfx::Bus_SPI _bus_instance;
//lgfx::Touch_XPT2046 _touch_instance;
lgfx::Touch_CST816S _touch_instance; //should able to drive CST820 <<================modif
lgfx::Light_PWM _light_instance;
......
{
auto cfg = _touch_instance.config();
cfg.x_min = 0;
cfg.x_max = 239;
cfg.y_min = 0;
cfg.y_max = 319;
cfg.pin_int = TOUCH_IRQ;
cfg.bus_shared = true;
cfg.offset_rotation = 0;
/* partie commentée
cfg.spi_host = VSPI_HOST;
cfg.freq = 1000000;
cfg.pin_sclk = TOUCH_SCK;
cfg.pin_mosi = TOUCH_MOSI;
cfg.pin_miso = TOUCH_MISO;
cfg.pin_cs = TOUCH_CS;
*/
cfg.i2c_port = 1;//I2C_NUM_1;
cfg.i2c_addr = 0x15;
cfg.pin_sda = 33;
cfg.pin_scl = 32;
cfg.pin_rst = 25;
cfg.freq = 400000;
_touch_instance.config(cfg);
_panel_instance.setTouch(&_touch_instance);
}
setPanel(&_panel_instance);
Et finalement l'affectation des pins pour mon module
IO2 TFT_RS
IO4 LED1_2
IO5 TF_CS
IO12 RTP_OUT/TFT_SDO
IO13 RTP_DIN/TFT_SDI
IO14 RTP_CLK/TFT_SCK
IO15 TFT_CS
IO16 LED1_3
IO17 LED1_1
IO18 TF_CLK
IO19 TF_SDO
IO23 TF_SDI
IO25 CTP_RST
IO26 SPK
IO27 BL_CTRL
IO32 CTP_SCL
IO33 RTP_CS/CTP_SDA
IO34 R21(photoresistor)
IO36 RTP_IRQ
Je suipreneur de toute idée qui permettrait de faire fonctionner le touchpad
Merci d'avance
J'ai enfin réussi à afficher quelque chose sur mon module ESP32 avec écran JC2432W328C (dalle capacitive) avec la version 14.02 en mettant les parametres suivants dans le fichier "Ecran.h"
class LGFX : public lgfx::LGFX_Device {
//lgfx:

lgfx:

...
#define LCD_MOSI 13
#define LCD_MISO 12
#define LCD_SCK 14
#define LCD_CS 15
#define LCD_RST -1
#define LCD_DC 2
#define LCD_BL 27
Du coup la page d'accueil s'affiche bien, par contre le touchpad ne fonctionne pas!
Bon ce n'est pas le même controleur que celui de l'ESP32-2432S028R
Celui de mon module semble être un CST820 qui se branche en I2C et non pas en SPI
Voici donc les modifications que j'ai apporté mais qui ne semblent pas donner de résultat
class LGFX : public lgfx::LGFX_Device {
//lgfx:

lgfx:

lgfx::Bus_SPI _bus_instance;
//lgfx::Touch_XPT2046 _touch_instance;
lgfx::Touch_CST816S _touch_instance; //should able to drive CST820 <<================modif
lgfx::Light_PWM _light_instance;
......
{
auto cfg = _touch_instance.config();
cfg.x_min = 0;
cfg.x_max = 239;
cfg.y_min = 0;
cfg.y_max = 319;
cfg.pin_int = TOUCH_IRQ;
cfg.bus_shared = true;
cfg.offset_rotation = 0;
/* partie commentée
cfg.spi_host = VSPI_HOST;
cfg.freq = 1000000;
cfg.pin_sclk = TOUCH_SCK;
cfg.pin_mosi = TOUCH_MOSI;
cfg.pin_miso = TOUCH_MISO;
cfg.pin_cs = TOUCH_CS;
*/
cfg.i2c_port = 1;//I2C_NUM_1;
cfg.i2c_addr = 0x15;
cfg.pin_sda = 33;
cfg.pin_scl = 32;
cfg.pin_rst = 25;
cfg.freq = 400000;
_touch_instance.config(cfg);
_panel_instance.setTouch(&_touch_instance);
}
setPanel(&_panel_instance);
Et finalement l'affectation des pins pour mon module
IO2 TFT_RS
IO4 LED1_2
IO5 TF_CS
IO12 RTP_OUT/TFT_SDO
IO13 RTP_DIN/TFT_SDI
IO14 RTP_CLK/TFT_SCK
IO15 TFT_CS
IO16 LED1_3
IO17 LED1_1
IO18 TF_CLK
IO19 TF_SDO
IO23 TF_SDI
IO25 CTP_RST
IO26 SPK
IO27 BL_CTRL
IO32 CTP_SCL
IO33 RTP_CS/CTP_SDA
IO34 R21(photoresistor)
IO36 RTP_IRQ
Je suipreneur de toute idée qui permettrait de faire fonctionner le touchpad
Merci d'avance