ESP32-S3-Touch-AMOLED-1.43C 使用教程

产品特性

  • 搭载 ESP32-S3-PICO-1-N8R8 高性能 Xtensa 32 位 LX7 双核处理器,主频高达 240MHz
  • 支持 2.4GHz Wi-Fi (802.11 b/g/n) 和 Bluetooth 5 (LE),板载天线
  • 内置 512KB SRAM 和 384KB ROM,叠封 8MB Flash 与 8MB PSRAM
  • 采用 Type-C 接口,提高了用户的使用便捷性和设备的兼容性
  • 板载 1.43 英寸电容触摸高清 AMOLED 屏,466 × 466 分辨率,16.7M 彩色,能清晰地显示彩色图片
  • 使用 AMOLED 屏幕,具有更高的对比度、更广的视角、丰富的色彩,视觉效果更优秀。同时具备纤薄设计、低功耗、响应快速和高灵活性等优点
  • 内置 CO5300 驱动芯片和 CST820 电容触控芯片,分别使用 QSPI 和 I2C 接口通信,不占用过多接口引脚资源
  • 配备双麦克风阵列,可实现降噪和回声消除等音频算法,适合精准的语音识别和近场 / 远场语音唤醒应用
  • 板载 BOOT 自定义功能的侧边按钮,方便使用按钮进行自定义功能开发
  • 板载 3.7V MX1.25 锂电池充放电接口
  • 引出 1 路 I2C、1 路 UART 和 1 路 USB 焊盘,可供外接设备和调试使用,灵活配置外设功能

资源简介


  1. ESP32-S3-PICO-1-N8R8 Wi-Fi 和蓝牙 SoC,240MHz 运行频率,叠封 8MB PSRAM 和 8MB Flash
  2. 扬声器功放芯片 专业音频功率放大芯片,提供清晰饱满的音频输出,保障高品质外放体验
  3. ES8311 低功耗音频编解码芯片
  4. ES7210 回声消除算法芯片 回声消除算法芯片,可用于消除回声,提高音频采集准度
  5. 屏幕接口 仅限于连接屏幕
  6. 板载贴片天线 支持 2.4GHz Wi-Fi (802.11 b/g/n) 和 Bluetooth 5 (LE)
  7. MX1.25 扬声器接口 音频输出信号,支持外接扬声器
  8. MX1.25 锂电池接口 MX1.25 2PIN 连接器,可用于接入 3.7V 锂电池,支持充放电
  9. 双麦克风阵列设计 双麦克风阵列,支持更丰富的语音交互功能
  10. BOOT 按键 按住 BOOT 按键,可通过 PWR 按键重新上电即可进入下载模式
  11. PWR 电源按键 通电自动开机,短按开机,长按关机
  12. 自定义 LED 灯 连接 GPIO5,可自定义功能
  13. Type-C 接口 ESP32-S3 USB Type-C 接口,用于烧录程序和日志输出

接口介绍


AMOLED 屏幕参数

参数参数
显示面板AMOLED显示尺寸1.43 英寸
显示分辨率466 × 466 pixels显示颜色16.7M
显示亮度600cd/㎡对比度10000:1
通信接口QSPI驱动 ICCO5300
触控支持触控 ICCST820

产品尺寸



Arduino 开发

本章节包含以下部分,请按需阅读:

Arduino 入门教程

初次接触 Arduino ESP32 开发,想要快速上手?我们为您准备了一套通用的 入门教程

请注意:该教程使用 ESP32-S3-Zero 作为教学示例,所有硬件代码均基于其引脚布局。在动手实践前,建议您对照手中的开发板引脚图,确认引脚配置无误。

配置开发环境

1. 安装和配置 Arduino IDE

信息

对于 ESP32-S3-Touch-AMOLED-1.43C 开发板,Arduino IDE 需要安装 arduino-esp32 v3.3.0 以上版本。

请参考 安装和配置 Arduino IDE 教程 下载安装 Arduino IDE 并添加 ESP32 支持。

2. 安装库

  • 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装。若库安装要求离线安装,则必须使用提供的库文件。
  • 对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。
  • 可从 该处 下载 ESP32-S3-Touch-AMOLED-1.43C 开发板的示例程序包。包内的 Arduino\libraries 目录已包含本教程所需的全部库文件。
库或文件名称说明版本安装方式
LVGL图形库v8.3.11/v9.5.0"离线安装"
版本兼容性说明

LVGL 及其驱动库的版本之间存在较强的依赖关系。例如,为 LVGL v8 编写的驱动可能不兼容 LVGL v9。为确保示例能够稳定复现,推荐使用上表列出的特定版本。混合使用不同版本的库可能导致编译失败或运行时异常。

3. Arduino 工程参数设置


示例程序

Arduino 示例程序位于 示例程序包 的 Arduino/examples 目录中。

示例程序基础例程说明依赖库
01_ADC_Test获取锂电池的电压值-
02_WIFI_AP设置为 AP 模式,可获取接入设备的 IP 地址-
03_WIFI_STA设置为 STA 模式,可接入 WiFi 获取 IP 地址-
04_Audio_Test扬声器播放麦克风录到的声音LVGL V9.5.0
05_LVGL_V8_TestLVGLV8 例程LVGL V8.3.11
06_LVGL_V9_TestLVGLV9 例程LVGL V9.5.0

01_ADC_Test

【程序说明】

  • 通过 GPIO 连接的模拟量电压经过 ADC 转换成数字量,然后通过计算得到实际的锂电池电压,并打印到终端。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

printf("adc-example run\n"); //终端输出信息
bsp_batt_init(); //初始化 adc 通道
bsp_batt_get_voltage(); //获取电池电压
bsp_batt_get_status(); //获取电池充电状态

【运行效果】

  • 程序编译下载完成,打开串口监控可以看到打印输出锂电池的电压以及充电信息,如下图所示:


02_WIFI_AP

【程序说明】

  • 该示例可将开发板设置为热点,允许手机或其他处于 STA 模式的设备连接到开发板。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

  • 在 02_WIFI_AP.ino 文件找到 ssid 和 password,然后手机或其他处于 STA 模式的设备即可使用该 ssid 和 password 连接到开发板。

    const char *ssid = "ESP32_AP";
    const char *password = "12345678";

【运行效果】

  • 烧录完程序,打开串口终端,如果设备连接热点成功之后,会输出该设备的 MAC 地址,如图:


03_WIFI_STA

【程序说明】

  • 该示例可将开发板配置为 STA 设备,以连接路由器,从而接入系统网络。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

  • 在 03_WIFI_STA.ino 文件找到 ssid 和 password,然后将其修改为当前环境中可用路由器的 SSID 和 Password。

    const char *ssid = "you_ssid";
    const char *password = "you_password";

【运行效果】

  • 烧录完程序,打开串口终端,如果设备连接成功热点之后,会输出所获取的 IP 地址,如图:


04_Audio_Test

【程序说明】

  • 演示如何获取麦克风数据,播放音乐等功能。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

bsp_broolesia_display_init(); //屏幕初始化
speaker = bsp_audio_codec_speaker_init(); //获取播放句柄
microphone = bsp_audio_codec_microphone_init();//获取录音句柄
boot_button_ = new Button(BUTTON_0_GPIO_PIN);//实例化按键
InitializeButtons();//按键回调初始化
ESP_ERROR_CHECK(esp_codec_dev_open(speaker, &fs));//打开播放
ESP_ERROR_CHECK(esp_codec_dev_open(microphone, &fs)); //打开录音
ESP_ERROR_CHECK(esp_codec_dev_set_out_vol(speaker, 100));//设置播放声音大小
ESP_ERROR_CHECK(esp_codec_dev_set_in_gain(microphone,35));//设置录音增益大小

【运行效果】

  • 程序烧录完成后,屏幕显示如图:

    提示
    1. 单击 BOOT 按键,可以录音 3 秒,录音结束之后自动播放录音
    2. 双击 BOOT 按键,可以播放一段音乐,长按 BOOT 按键可打断播放


05_LVGL_V8_Test

【程序说明】

  • 通过移植 LVGL V8,在屏幕上实现一些多功能的 GUI 界面。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

#define BACKLIGHT_EN 1 //宏定义,使能开启背光测试,默认打开
bsp_broolesia_display_init();//初始化屏幕以及LVGL
if(bsp_display_lock(-1) == ESP_OK) { //等待锁
lv_demo_widgets(); //LVGL 默认 UI
bsp_display_unlock(); //释放锁
}

【运行效果】

  • 程序烧录完成后,设备的运行效果如下:


06_LVGL_V9_Test

【程序说明】

  • 通过移植 LVGL V9,在屏幕上实现一些多功能的 GUI 界面。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

#define BACKLIGHT_EN 1 //宏定义,使能开启背光测试,默认打开
bsp_broolesia_display_init();//初始化屏幕以及LVGL
if(bsp_display_lock(-1) == ESP_OK) { //等待锁
lv_demo_widgets(); //LVGL 默认 UI
bsp_display_unlock(); //释放锁
}

【运行效果】

  • 程序烧录完成后,设备的运行效果如下:



ESP-IDF

本章节包含以下部分,请按需阅读:

ESP-IDF 入门教程

初次接触 ESP32 ESP-IDF 开发,想要快速上手?我们为您准备了一套通用的 入门教程

请注意:该教程使用 ESP32-S3-Zero 作为教学示例,所有硬件代码均基于其引脚布局。在动手实践前,建议您对照手中的开发板引脚图,确认引脚配置无误。

配置 ESP-IDF 开发环境

备注

以下内容以 Windows 系统为例,使用 VS Code + ESP-IDF 扩展 的方式进行开发。Mac/Linux 用户请参考 官方说明

安装 ESP-IDF 开发环境

  1. 前往 ESP-IDF Installation Manager 下载 ESP-IDF 安装管理器。这是乐鑫最新推出的跨平台安装工具,下文将演示如何使用其离线安装功能。

    在页面中点击 Offline Installer 标签,然后在筛选栏中选择 Windows 操作系统和你要安装的版本。


    确认选择无误后,点击下载按钮。浏览器将自动同时下载两个文件:一个是 ESP-IDF 离线整合包(.zst),另一个是 ESP-IDF 安装器(.exe)


    请耐心等待两个文件下载完成。

  2. 下载完成后,双击运行 ESP-IDF 安装器(eim-gui-windows-x64.exe)

    启动后,可在右上角将界面语言切换为中文。


    安装工具会自动检测同一目录下是否存在离线整合包。点击 从存档安装


    接下来,选择安装路径。建议使用默认路径;若需自定义,请确保路径中不包含中文或空格。确认无误后,点击 开始安装


  3. 当看到如下界面时,表示 ESP-IDF 已安装成功。


  4. 建议同时安装驱动程序。点击 完成安装,然后点击 安装驱动程序


安装 Visual Studio Code 与 ESP-IDF 扩展

  1. 下载并安装 Visual Studio Code

  2. 安装时建议勾选 通过 Code 打开操作添加到 Windows 资源管理器文件上下文菜单,以便快速打开项目文件夹。

  3. 在 VS Code 中,点击侧边活动栏中的 扩展图标 扩展图标(或使用快捷键 Ctrl + Shift + X)打开 扩展 视图。

  4. 在搜索框中输入 ESP-IDF,找到 ESP-IDF 扩展并点击安装。


  5. 当 ESP-IDF 扩展版本 ≥ 2.0 时,扩展会自动检测并识别上述步骤中安装的 ESP-IDF 环境,无需手动配置。

示例程序

ESP-IDF 示例程序位于 示例程序包 的 ESP-IDF 目录中。

示例程序基础例程说明依赖库
01_ADC_Test获取锂电池的电压值-
02_WIFI_AP设置为 AP 模式,可获取接入设备的 IP 地址-
03_WIFI_STA设置为 STA 模式,可接入 WiFi 获取 IP 地址-
04_Audio_Test扬声器播放麦克风录到的声音LVGL V9.5.0
05_LVGL_V8_TestLVGLV8 例程LVGL V8.3.11
06_LVGL_V9_TestLVGLV9 例程LVGL V9.5.0
07_FactoryProgram综合示例LVGL V9.5.0

01_ADC_Test

【程序说明】

  • 通过 GPIO 连接的模拟量电压经过 ADC 转换成数字量,然后通过计算得到实际的锂电池电压,并打印到终端。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

printf("adc-example run\n"); //终端输出信息
bsp_batt_init(); //初始化 adc 通道
xTaskCreate(Batt_LoopTask, "Batt_LoopTask", 4 * 1024, NULL, 3, NULL); //创建一个任务获取电压信息以及电池充电信息

【运行效果】

  • 程序编译下载完成,打开串口监控可以看到打印输出锂电池的电压以及充电信息,如下图所示:


02_WIFI_AP

【程序说明】

  • 该示例可将开发板设置为热点,允许手机或其他处于 STA 模式的设备连接到开发板。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

  • 在 softap_example_main.c 文件找到 SSID 和 PASSWORD,然后手机或其他处于 STA 模式的设备即可使用该 SSID 和 PASSWORD 连接到开发板。

    #define EXAMPLE_ESP_WIFI_SSID "waveshare_esp32"
    #define EXAMPLE_ESP_WIFI_PASSWORD "wav123456"

【运行效果】

  • 烧录完程序,打开串口终端,如果设备连接热点成功之后,会输出该设备的 MAC 地址和 IP 地址,如图:


03_WIFI_STA

【程序说明】

  • 该示例可将开发板配置为 STA 设备,以连接路由器,从而接入系统网络。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

  • 在 esp_wifi_bsp.c 文件找到 ssid 和 password,然后将其修改为当前环境中可用路由器的 SSID 和 Password。

    wifi_config_t wifi_config = {
    .sta = {
    .ssid = "PDCN",
    .password = "1234567890",
    },
    };

【运行效果】

  • 烧录完程序,打开串口终端,如果设备连接成功热点之后,会输出所获取的 IP 地址,如图:


04_Audio_Test

【程序说明】

  • 演示如何获取麦克风数据,播放音乐等功能。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

bsp_broolesia_display_init(); //屏幕初始化
speaker = bsp_audio_codec_speaker_init(); //获取播放句柄
microphone = bsp_audio_codec_microphone_init();//获取录音句柄
boot_button_ = new Button(BUTTON_0_GPIO_PIN);//实例化按键
InitializeButtons();//按键回调初始化
ESP_ERROR_CHECK(esp_codec_dev_open(speaker, &fs));//打开播放
ESP_ERROR_CHECK(esp_codec_dev_open(microphone, &fs)); //打开录音
ESP_ERROR_CHECK(esp_codec_dev_set_out_vol(speaker, 100));//设置播放声音大小
ESP_ERROR_CHECK(esp_codec_dev_set_in_gain(microphone,35));//设置录音增益大小

【运行效果】

  • 程序烧录完成后,屏幕显示如图:

    提示
    1. 单击 BOOT 按键,可以录音 3 秒,录音结束之后自动播放录音
    2. 双击 BOOT 按键,可以播放一段音乐,长按 BOOT 按键可打断播放


05_LVGL_V8_Test

【程序说明】

  • 通过移植 LVGL V8,在屏幕上实现一些多功能的 GUI 界面。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

#define BACKLIGHT_EN 1 //宏定义,使能开启背光测试,默认打开
bsp_broolesia_display_init();//初始化屏幕以及LVGL
if(bsp_display_lock(-1) == ESP_OK) { //等待锁
lv_demo_widgets(); //LVGL 默认 UI
bsp_display_unlock(); //释放锁
}

【运行效果】

  • 程序烧录完成后,设备的运行效果如下:


06_LVGL_V9_Test

【程序说明】

  • 通过移植 LVGL V9,在屏幕上实现一些多功能的 GUI 界面。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【代码分析】

#define BACKLIGHT_EN 1 //宏定义,使能开启背光测试,默认打开
bsp_broolesia_display_init();//初始化屏幕以及LVGL
if(bsp_display_lock(-1) == ESP_OK) { //等待锁
lv_demo_widgets(); //LVGL 默认 UI
bsp_display_unlock(); //释放锁
}

【运行效果】

  • 程序烧录完成后,设备的运行效果如下:


07_FactoryProgram

【程序说明】

  • 出厂固件,用户可烧录我们提供的出厂固件,帮助用户快速了解开发板。

【硬件连接】

  • 使用 USB 线把板子接入电脑

【运行效果】

  • 烧录出厂固件重启之后,可看到开发板显示内容,如下图所示:


相关资料

1. 硬件资料

开发板设计文件

2. 技术手册

3. 示例程序


技术支持

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

手机:13434470212

邮箱:services04@spotpear.cn

QQ:202004841