跳到主要内容

Arduino 开发

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

Arduino 入门教程

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

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

配置开发环境

1. 安装和配置 Arduino IDE

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

2. 安装库

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

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

安装步骤:

  1. 下载 示例程序包

  2. 将其 Arduino\libraries 目录下的所有文件夹(LVGL 、ESP32-audioI2S-master 等)复制到 Arduino 的库文件夹中。

    信息

    Arduino 库文件夹的路径通常是:c:\Users\<用户名>\Documents\Arduino\libraries

    也可以在 Arduino IDE 中通过 文件 > 首选项,查看“项目文件夹位置”来定位。库文件夹就是此路径下的 libraries 文件夹。

  3. 其他安装方式请参考:Arduino 库管理教程

ESP32-S3-Touch-LCD-2.8 所需开发板安装说明

板名称板安装要求版本号要求
ESP32 by Espressif Systems“离线”安装/“在线”安装≥3.0.0

示例程序

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

01_LVGL_Arduino

程序说明

  • 本示例演示了如何在嵌入式设备上集成 LVGL 图形库,通过硬件初始化与图形库初始化的配合,搭建完整的图形界面运行环境。通过持续调用 LVGL 核心循环,确保图形界面实时响应用户交互并刷新系统状态,同时兼顾 CPU 资源的合理占用。

硬件连接

  • 将 SD 卡接入开发板
  • 将开发板接入电脑

代码分析

  • setup():

    • 进行多个硬件模块的初始化,包括闪存测试、电源、电池、I2C 总线、实时时钟、陀螺仪、背光、SD 卡、音频和显示屏等。确保各个硬件能够正常工作,为系统提供必要的功能支持
    • 初始化 LVGL,为图形界面的显示和交互做准备
    • 可选择调用不同的 LVGL 示例或特定功能,展示不同的图形效果和交互方式
  • loop():

    • 持续调用 Lvgl_Loop,确保 LVGL 的图形界面能够不断更新,响应用户的交互操作,并反映系统的状态变化
    • 添加短暂延迟,避免过度占用 CPU 资源,同时让系统有时间处理其他任务或等待外部事件

运行效果

  • 参数说明:
参数功能说明
SD Card显示 SD 卡的大小连接 SD 卡,若识别失败请将 SD 卡格式化为 FAT32 格式(首次识别失败请等待一会后复位下再查看)
Flash Size显示 Flash 大小当前板载 16MB Flash
Battery Voltage电池电压连接电池时可检测到电池电压
Angular deflection显示板子角度偏移显示三个方向的偏移
RTC Time显示 RTC 时间RTC 时间与当前时间不一致,是因为掉电状态下并不能留存数据,如需要保持 RTC 时间正常,则需连接 RTC 电池并更新 RTC 时间
Wireless scan显示扫描到的 WIFI 个数扫描结束会在末尾显示 Scan Finish
Backlight brightness亮度滑动条调节屏幕亮度