ESP32-S3 MP3开发板2.8寸LCD触控显示屏 使用教程

【产品概述】

产品参数

参数名称参数
接口USB Type-C
主控芯片ESP32-S3
屏幕类型TFT
屏幕控制芯片Display :ST7789
Touch :CST328
板载设备姿态传感器 :QMI8658
RTC时钟 :PCF85063
PCM音频解码 :PCM5101
Micro SD
电池充电管理模块
产品尺寸73.06(H)x 50.54(V) mm

】接口说明


  • 12PIN 杜邦线接口
引脚丝印功能说明
GNDGND电源地
VBus5VUSB供电
D-USB 差分线(GPIO19)USB 差分线或用做GPIO
D+USB 差分线(GPIO20)USB 差分线或用做GPIO
GNDGND电源地
3V33V3对外输出3.3V
SCLSCL(GPIO10)I2C 时钟线,不可用作普通GPIO
SDASDA(GPIO11)I2C 数据线,不可用作普通GPIO
TXDTXD(GPIO43)UART 数据发送或用作普通GPIO
RXDRXD(GPIO44)UART 数据接收或用作普通GPIO
IO18GPIO18空闲引脚引出
IO15GPIO15空闲引脚引出
  • I2C 接口
引脚丝印功能说明
GNDGND电源地
3V33V3对外输出3.3V
SCLSCL(GPIO10)I2C 时钟线,不可用作普通GPIO
SDASDA(GPIO11)I2C 数据线,不可用作普通GPIO
  • UART 接口
引脚丝印功能说明
GNDGND电源地
3V33V3对外输出3.3V
TXDTXD(GPIO43)UART 数据发送或用作普通GPIO
RXDRXD(GPIO44)UART 数据接收或用作普通GPIO


【板载功能使用】


】内部硬件连接

[] LCD

LCD引脚ESP32S3
VCC3.3V
GNDGND
MISONC
MOSIGPIO45
SCLKGPIO40
LCD_CSGPIO42
LCD_DCGPIO41
LCD_RSTGPIO39
LCD_BLGPIO5
TP_SDAGPIO1
TP_SCLGPIO3
TP_INTGPIO4
TP_RSTGPIO2

[] SD Card

SD CardESP32S3
SD_D0 / MISOGPIO16
SD_CMD / MOSIGPIO17
SD_SCK / SCLKGPIO40
SD_D3 / CSGPIO21
SD_D1NC(GPIO18)
SD_D2NC(GPIO15)

[] QM

QMI8658CESP32S3
IMU_SCLGPIO10
IMU_SDAGPIO11
IMU_INT1GPIO13
IMU_INT2GPIO12

[] RTC

PCF85063ATLESP32S3
RTC_SCLGPIO10
RTC_SDAGPIO11
RTC_INTGPIO9

[] Speaker

PCM5101APWRESP32S3
I2S_LRCKGPIO38
I2S_DINGPIO47
I2S_BCKGPIO48

】搭建环境

  • 安装完成后打开 Arduino IDE

  • 进入开发板管理器,搜索 esp32 ,在下方的 esp32 by Espressif Systems 中选择 当前最新版本并点击安装(若不能正常安装可使用手机热点尝试)

  • 安装完成重启 Arduino IDE 即可使用

  • 上方将项目文件夹更改为 c:\Users\Waveshare\AppData\Local\Arduino15\packages(其中 Waveshare 为计算机用户名)

  • 点击FILE -> Preferences.. 查看库路径
  • 重新开启 Arduino IDE


】安装库文件

  • 请注意此前是否已经安装过该库,若已安装请存档原有的库,防止运行其他程序时出现错误失败
  • 进入示例文件夹 ESP32_S3_Touch_LCD_2.8\LVGL_Arduino ,双击 LVGL_Arduino.ino 打开示例
  • 搜索lvgl库并安装(此操作为了在 Arduino 环境中搭建库文件夹,若之前已经安装过其他库,即存在以下指的文件夹则不用执行这一步)



  • 进入库文件存放路径 c:\Users\Waveshare\AppData\Local\Arduino15\packages\libraries(其中 Waveshare 为计算机用户名),此操作为进入项目文件夹目录下的libraries,不确定在哪个文件夹请进入首选项查看
  • 删除刚才下载的 lvgl 库(若前面没有安装则忽略这一步)
  • 安装示例文件中的三个库,在示例路径中新建一个Lib 文件夹
  • 在本页面的下方将三个库文件lvgl库TFT_eSPI库audioI2S库)下载并解压,存放到刚才新建的Lib路径
  • 复制提供的库到 c:\Users\Waveshare\AppData\Local\Arduino15\packages\libraries(其中 Waveshare 为计算机用户名) 下


  • 继续安装 NTPClient 库


  • 安装 SensorLib 库


  • 完成库安装

】示例程序

  • 重新打开示例,根据以下操作实现显示,示例实现SD Card、Flash、QMI8658、RTC、WIFI、蓝牙、音频播放等功能
  • 选择型号 ESP32S3 Dev Module 与端口
  • 设置板子参数


  • 编译并烧录示例

  • 烧录成功可观察到两个可操作页面
  • 页面 1 分别显示的参数如下
参数功能说明
SD Card显示 SD 卡的大小请注意,仅支持 16GB 及以下的 SD 卡
Flash Size显示 Flash 大小当前板载 16MB Flash
Angular deflection显示板子角度偏移显示三个方向的偏移
RTC Timr显示 RTC 时间显示当前 RTC 时间

RTC 时间与当前时间不一致,是因为掉电状态下并不能留存数据,如需要保持 RTC 时间正常,则需连接 RTC 电池并更新 RTC 时间

Wireless number显示扫描到的WIFI和蓝牙个数扫描结束会在末尾显示 Scan Finish
  • 页面 2 为播放 SD 卡根目录下的 mp3 音频的 UI 页面


【项目参考】

产品使用的ESP32在Arduino IDE上可玩性比较高,可以在已有程序框架下简单进行UI界面的修改即可实现酷炫操作。在一些开源平台上的资源也可以在小幅修改下直接使用,较为经典的如下:

】示例程序

    [] 部分模拟小游戏


【资料】

】文档

[] 原理图

ESP32-S3-Touch-LCD-2.8原理图

[] ESP32-S3

[] LCD

ST7789T3 数据手册
CST328 数据手册


】程序

  • 库文件

   lvgl库
   TFT_eSPI库
   audioI2S库

  • 示例程序

   示例程序



【FAQ】

这种情况可能是由于 Flash 空白导致 USB 口不稳定,可长按BOOT按键,同时按下RESET,然后松开RESET,再松开BOOT按键,此时模块可进入下载模式烧录固件(程序)即可解决该情况。


可长按BOOT按键,同时按下RESET,然后松开RESET,再松开BOOT按键,此时模块可进入下载模式,可解决大部分无法下载的问题。


【技术支持】

周一-周五(9:30-6:30)周六(9:30-5:30)

手机:13434470212

邮箱:services04@spotpear.cn

QQ:202004841