开源改变世界!!

2.8inch_ESP32-2432S028R显示屏支持 #55

推推 grbl 1年前 (2023-02-12) 716次浏览
关闭
Dudley1001 打开了这个问题 2022 年 11 月 28 日 · 3条评论
关闭

2.8inch_ESP32-2432S028R显示屏支持#55

Dudley1001 打开了这个问题 2022 年 11 月 28 日 · 3条评论

评论

2.8inch_ESP32-2432S028R显示屏支持 #55

我购买了这个 2.8inch_ESP32-2432S028R 显示器,因为它在一块板上有 esp32 wroom、ILI9341 TFT 驱动程序和 XPT2046 触摸屏驱动程序以及 sdcard 读卡器。屏幕是 2.8″ 240×320。当我收到它时,我发现 io 引脚路由不同,因为 tft、touch 和 sdcard 都硬连接到不同的 mosi、moso、sck 引脚。我能够让 tft 和 sdcard 工作但是不是触摸。我将 config.h 设置为 TFT_CARD_VERSION 2,因为这允许使用 vspi 和 hspi。user_setup.h 和配置也更改为电路板的引脚分配。一切都正确编译,屏幕工作,但我卡在校准屏幕上。我在 sdcard 上放了一个 calibrate.txt,它被检测到但没有触摸。我尝试了触摸测试草图,但在串行监视器中查看时没有输入响应。我对 esp32 编程还很陌生,但似乎只有 2 个 spi 通道可用,这看起来应该需要 3 个。我考虑过切割痕迹和重新布线,但如果有可用的软件解决方案,我认为这将成为一个很好的屏幕项目。我希望在运行 grbl 的 PandaZhu esp32 板上运行我的 mpcnc 时使用它。

来自用户指南/示例代码/原理图:
#define ILI9341_2_DRIVER //替代 ILI9341 驱动程序,参见Bodmer/TFT_eSPI#1172
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
#define TFT_BL 21 // LED 背光控制引脚
#define TFT_BACKLIGHT_ON HIGH / / Level to turn ON back-light (HIGH or LOW)
#define TFT_MOSI 13 // 在某些显示驱动板中,它可能写为“SDA”等。
#define TFT_SCLK 14
#define TFT_CS 15 // 片选控制引脚
#define TFT_DC 2 // 数据命令控制引脚
#define TFT_RST 12 // 复位引脚(可以连接到Arduino RESET引脚)
#define TFT_BL 21 // LED背光
#define SPI_FREQUENCY 55000000 // 仅限 STM32 SPI1(SPI2 最大值为 27MHz)
// 可选降低 SPI 频率以读取 TFT
#define SPI_READ_FREQUENCY 20000000
触摸屏:
#define XPT2046_IRQ 36
#define XPT2046_MOSI 32
#define XPT2046_MISO 39
#define XPT2046_CLK 25
#define XPT2046_CS 33
// XPT2046 需要较低的 2.MHz SPI5 时钟速率我们在这里定义:
#define SPI_TOUCH_FREQUENCY 2500000

SD 卡读卡器:
IO 5 – CS
IO 23 – MOSI
IO 18 – CLK
IO 19 – MISO

2.8inch_ESP32-2432S028R显示屏支持 #55

应该补充一下,我用的是最新的Grbl_controller_esp32_master,esp32扩展1.04,SDFAT 2.06

2.8inch_ESP32-2432S028R显示屏支持 #55

我切断了触摸 xpt2046 mosi、miso 和 clk 的痕迹,并将它们绑定到 sd 卡的 mosi、miso 和 clk 并启用了 HSPI,这让 tft、touch 和 sd 工作。