ESP32-S3-LCD-1.85

来自Waveshare Wiki
跳转至: 导航搜索
ESP32-S3-LCD-1.85
{{{name2}}}
{{{name3}}}
功能简介
特性 无特性,不解释
显示尺寸 1.85 英寸
分辨率 360×360
' 无特性,不解释
' 无特性,不解释
接口 I2C QSPI

说明

产品概述

产品参数

参数名称 参数
接口 USB Type-C
主控芯片 ESP32-S3
屏幕类型 TFT
屏幕控制芯片 Display :ST77916
板载设备 姿态传感器 :QMI8658
RTC时钟 :PCF85063
Micro SD
MIC
喇叭
电池充电管理模块

接口说明

  • I2C 接口
引脚丝印 功能 说明
GND GND 电源地
3V3 3V3 对外输出3.3V
SCL SCL(GPIO10) I2C 时钟线,不可用作普通GPIO
SDA SDA(GPIO11) I2C 数据线,不可用作普通GPIO
  • UART 接口
引脚丝印 功能 说明
GND GND 电源地
3V3 3V3 对外输出3.3V
TXD TXD(GPIO43) UART 数据发送或用作普通GPIO
RXD RXD(GPIO44) UART 数据接收或用作普通GPIO

板载功能使用

请注意,在通过提供的示例启用所有板载设备时,若想继续使用板载蓝牙设备,建议使用其他内存占用较小的音频库文件(否则会导致SRAM占用过大)

内部硬件连接

LCD

LCD引脚 ESP32S3
LCD_SDA0 GPIO46
LCD_SDA1 GPIO45
LCD_SDA2 GPIO42
LCD_SDA3 GPIO41
LCD_SCK GPIO40
LCD_CS GPIO21
LCD_TE GPIO18
LCD_RST EXIO2
LCD_BL GPIO5

SD Card

SD Card ESP32S3
SD_D0 / MISO GPIO16
SD_CMD / MOSI GPIO17
SD_SCK / SCLK GPIO14
SD_D3 / CS EXIO3
SD_D1 NC
SD_D2 NC

QMI

QMI8658C ESP32S3
IMU_SCL GPIO10
IMU_SDA GPIO11
IMU_INT1 EXIO5
IMU_INT2 EXIO4

RTC

PCF85063ATL ESP32S3
RTC_SCL GPIO10
RTC_SDA GPIO11
RTC_INT GPIO9

MIC

Buzzer ESP32S3
MIC_WS GPIO2
MIC_SCK GPIO15
MIC_SD GPIO39

喇叭

PCF85063ATL ESP32S3
Speak_DIN GPIO47
Speak_LRCK GPIO38
Speak_BCK GPIO48

Arduino 下使用

  • 请注意,Arduino 上的 ESP32 3.0.2 基于 ESP-IDF v5.1开发,与此前基于 ESP-IDF V4.X 有较大差异,在进行以下操作后,原先程序可以正常运行的程序可能需要进行一些调整才可使用
  • 请注意,电脑用户名必须是英文,用户名为中文会导致编译出错

搭建环境

ESP32-Arduino-3.0.2 1.png

  • 安装完成后打开 Arduino IDE

ESP32-Arduino-3.0.2 2.png

  • 进入首选项

ESP32-Arduino-3.0.2 3.png

  • 添加 JSON 链接
https://espressif.github.io/arduino-esp32/package_esp32_index.json

ESP32-Arduino-3.0.2 4.png
ESP32-Arduino-3.0.2 5.png

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

ESP32-Arduino-3.0.2 6.png

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

ESP32-Arduino-3.0.2 7.png
ESP32-Arduino-3.0.2 8.png

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

ESP32-Arduino-3.0.2 9.png

若安装失败则展开

  • 安装 3.0.2 版本失败

ESP32-Arduino-3.0.2 Fail 1.png

链接: https://pan.baidu.com/s/1ppl7ZU2NSTY_TfFzs1pDWA
提取码: 0755

ESP32-Arduino-3.0.2 Fail 2.png

  • 从资源管理器按路径 “c:\Users\Waveshare\AppData\Local\Arduino15\staging\packages” 进入(其中 Waveshare 为计算机用户名,需要开启显示隐藏文件)

ESP32-Arduino-3.0.2 Fail 3.png

  • 将上方下载的文件解压至 packages 文件夹下

ESP32-Arduino-3.0.2 Fail 4.png

  • 重新执行安装操作

ESP32-Arduino-3.0.2 7.png

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

ESP32-Arduino-3.0.2 9.png

安装库文件

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

ESP32-S3-Touch-LCD-1.85 Lib 1.png
ESP32-S3-Touch-LCD-1.85 Lib 2.png

  • 进入库文件存放路径 c:\Users\Waveshare\AppData\Local\Arduino15\packages\libraries(其中 Waveshare 为计算机用户名),不确定在哪个文件夹请进入首选项查看

ESP32-S3-Touch-LCD-1.85 Lib 3.png

  • 不清楚路径的可以这样查看

ESP32-S3-LCD-1.47 Lib 4.png
ESP32-S3-LCD-1.47 Lib 5.png

  • 删除刚才下载的 lvgl 库(若前面没有安装则忽略这一步)

ESP32-S3-Touch-LCD-1.85 Lib 4.png

  • 安装示例文件中的两个库,在示例路径中新建一个Lib 文件夹

ESP32-S3-Touch-LCD-1.85 Lib 5.png

  • 在本页面的下方将提供的 2 个库文件lvgl库audioI2S库
    )下载并解压,存放到刚才新建的Lib路径
  • 复制提供的库到 c:\Users\Waveshare\AppData\Local\Arduino15\packages\libraries(其中 Waveshare 为计算机用户名) 下

ESP32-S3-Touch-LCD-1.85 Lib 6.png

  • 继续安装 NTPClient 库

ESP32-S3-Touch-LCD-1.85 Lib 7.png

  • 安装 SensorLib 库

ESP32-S3-Touch-LCD-1.85 Lib 8.png

  • 完成库安装

示例程序

  • 重新打开示例
  • 选择型号 ESP32S3 Dev Module 与端口

ESP32-S3-Touch-LCD-1.85 example 1.png

  • 设置板子参数

ESP32-S3-Touch-LCD-1.85 example 2.png

  • 编译并烧录示例( 注意,烧录时会出现两次烧录进度,请等待提示烧录完成再操作设备)

ESP32-S3-Touch-LCD-1.85 example 3.png

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

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

Wireless number 显示扫描到的WIFI个数 扫描结束会在末尾显示 Scan Finish
  • 页面 2 为播放 SD 卡根目录下的 mp3 音频的 UI 页面
  • 本示例可以通过 BOOT 按键与 PWR 按键进行部件选择,以模拟触摸功能,同时按下这两个按键则表示确定按下
  • 本程序默认启用语音识别,唤醒词为 “hi esp”,唤醒后,背光变暗后即可说出指令(背光未变暗则表示未被唤醒,识别要求较为严格,发音需要标准,语速放缓)
  • 以下提供几种格式的MIC测试音频(请注意,每次hi esp唤醒失败的话请重新将音频调至该次唤醒词播放处重新播放)
  • 测试音频中之所以播放两次唤醒词,是由于当前固件版本首次唤醒需要聚焦设备(比喻),并且当前固件并不允许关闭该功能
// 指令
Turn on the backlight
Turn off the backlight
Backlight is brightest
Backlight is darkest
  • 下方示例解析,讲述部分模块环境配置与程序说明

示例解析

MIC

实现英文识别 -->(点击右侧展开)

   英文识别环境搭建

  • 环境初始状态默认为英文识别环境,若未转为中文,则不进行以下修改
  • 若此前有将其修改为中文识别则,下载提供的程序文件 使用英文模型的程序
  • 进入路径 C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\ESP_SR\src (其中 Waveshare 为电脑用户名)
  • 使用下载的文件替换该路径下的 esp32-hal-sr.c
  • 下载英文模型 英文模型-唤醒词hi esp
  • 进入路径 C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32s3\esp_sr (其中 Waveshare 为电脑用户名)
  • 使用下载的文件替换该路径下的 srmodels.bin
  • 将程序中的识别指令修改为英文指令(音素)

ESP32-S3-Touch-LCD-1.85 Program parsing 1.png
   生成英文音素

  • 下载 英文指令生成文件
  • 点击 Win + R 进入命令窗口,使用“cd 路径”进入下载的文件夹
  • 安装 en_g2p
pip install en_g2p
  • 执行 miltinet_g2p.py 文件
python miltinet_g2p.py
  • 执行 gen_sr_commands.py 生成音素指令
python gen_sr_commands.py "要转为音素的英文"
例:python gen_sr_commands.py "hello word"

ESP32-S3-Touch-LCD-1.85 Program parsing 3.png

实现中文识别 -->(点击右侧展开)

   中文识别环境搭建

  • 环境初始状态默认为英文识别环境,若此前未将其修改为中文识别则下载提供的程序文件 使用中文模型的程序
  • 进入路径 C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\ESP_SR\src (其中 Waveshare 为电脑用户名)
  • 使用下载的文件替换该路径下的 esp32-hal-sr.c
  • 下载中文模型 中文模型-唤醒词hi 乐鑫
  • 进入路径 C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32s3\esp_sr (其中 Waveshare 为电脑用户名)
  • 使用下载的文件替换该路径下的 srmodels.bin
  • 将程序中的识别指令修改为中文指令(拼音)

ESP32-S3-Touch-LCD-1.85 Program parsing 2.png
   生成中文拼音

  • 下载 中文指令生成文件
  • 点击 Win + R 进入命令窗口,使用“cd 路径”进入下载的文件夹
  • 执行 multinet_pinyin.py 生成中文拼音
python multinet_pinyin.py "要转为拼音的中文"
例:python multinet_pinyin.py "你好新中国"

ESP32-S3-Touch-LCD-1.85 Program parsing 4.png

资料

文档

原理图

ESP32-S3-LCD-1.85 原理图

程序

   lvgl库
   audioI2S库
   示例程序

FAQ

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


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


技术支持

联系人:欧工
EMAIL:2355861365@qq.com
QQ:2355861365
微信:扫下方二维码添加
欧工企业微信联系二维码.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证