跳到主要内容

搭配 ESP32 使用

(请注意,以下示例通过ESP32S3运行,其他型号的ESP32请自行调整引脚定义)

硬件连接​

  • 12PIN 杜邦线接口
LCD引脚ESP32S3
VCC3.3V
GNDGND
LCD_DIN2
LCD_CLK1
LCD_CS39
LCD_DC41
LCD_RST40
LCD_BL6
TP_SDA15
TP_SCL7
TP_IRQ17
TP_RST16

Arduino环境​

下载和安装 Arduino IDE​

  • 点击访问Arduino官网,选择对应的系统和系统位数下载。

ESP32-S3-AMOLED-1

  • 运行安装程序,全部默认安装即可。

安装 Arduino-ESP32​

  • ESP32相关主板在Arduino IDE使用,须先安装“Arduino-ESP32板 ”库
  • 国内部分区域安装,一般推荐“离线安装 ”, 若离线安装失败,则使用“在线安装 ”
  • 安装 Arduino-ESP32教程,详见:Arduino 板管理教程

安装库​

  • 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装 。
    对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。
  • 库安装教程,详见:Arduino 库管理教程
库名称说明版本库安装要求
GFX_Library_for_ArduinoLCD驱动库---“离线”安装
CST816触摸驱动库---“离线”安装
lvgl图形库v8.4.0“离线”安装

运行第一个Arduino程序​

示例程序​

LVGL_Arduino_v8​

【程序说明】

本示例演示了使用 1.9inch Touch LCD 运行lvgl示例程序

【硬件连接】

  • 将板子接入电脑

【代码分析】

  • 选择要运行的lvgl示例

    lv_demo_widgets();
    // lv_demo_benchmark();
    // lv_demo_keypad_encoder();
    // lv_demo_music();
    // lv_demo_stress();

【运行效果】

1

ESP-IDF 环境​

环境搭建​

示例程序​

lvgl_exampla​

【程序说明】

本示例演示了ESP32S3在ESP-IDF环境下驱动 1.9inch Touch LCD 运行lvgl示例程序

【硬件连接】

  • 将板子接入电脑

【代码分析】

i2c_bus_init(); // 初始化I2C
spi_bus_init(); // 初始化SPI
display_init(); // 初始化显示屏
touch_init(); // 初始化触摸屏驱动
brightness_init(); // 初始化背光控制模块
brightness_set_level(20); // 设置背光亮度为20%(支持0-100级调节)
lv_port_init(); // 初始化LVGL
if (lvgl_lock(-1)) // 获取LVGL线程锁(-1表示阻塞等待),确保多线程安全
{
// lv_demo_benchmark();
// lv_demo_music();
lv_demo_widgets(); // 启动LVGL的Demo
lvgl_unlock(); // 释放LVGL线程锁
}

【运行效果】

1