Arduino 开发
本章节包含以下部分,请按需阅读:
Arduino 入门教程
初次接触 Arduino ESP32 开发,想要快速上手?我们为您准备了一套通用的 入门教程。
- 第0节 认识 ESP32
- 第1节 安装和配置 Arduino IDE
- 第2节 Arduino 基础知识
- 第3节 数字输出/输入
- 第4节 模拟输入
- 第5节 脉冲宽度调制 (PWM)
- 第6节 串行通信 (UART)
- 第7节 I2C 通信
- 第8节 SPI 通信
- 第9节 Wi-Fi 基础用法
- 第10节 网页服务器
- 第11节 蓝牙 (Bluetooth)
- 第12节 LVGL 图形界面开发
- 第13节 综合项目
请注意:该教程使用 ESP32-S3-Zero 作为教学示例,所有硬件代码均基于其引脚布局。在动手实践前,建议您对照手中的开发板引脚图,确认引脚配置无误。
配置开发环境
1. 安装和配置 Arduino IDE
请参考 安装和配置 Arduino IDE 教程 下载安装 Arduino IDE 并添加 ESP32 支持。
ESP32-S3-LCD-1.47 所需开发板安装说明
| 板名称 | 板安装要求 | 版本号要求 |
|---|---|---|
| esp32 by Espressif Systems | “离线”安装/“在线”安装 | ≥3.0.2 |
2. 安装库
- 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装 。若库安装要求离线安装,则必须使用提供的库文件
- 对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。
- 库安装教程,详见:安装和配置 Arduino IDE 教程 当中关于库安装的部分
- ESP32-S3-LCD-1.47 库文件存放于示例程序中,点击此处跳转:ESP32-S3-LCD-1.47 示例程序
ESP32-S3-LCD-1.47 库文件安装说明
| 库名称 | 说明 | 版本 | 库安装要求 |
|---|---|---|---|
| LVGL | 图形库 | v8.3.10 | “离线”安装 |
| PNGdec | 解码 PNG 图像格式 | v1.0.2 | “离线”安装 |
信息
LVGL 更多学习及使用可参考 LVGL 官方文档
示例程序

ESP32-S3-LCD-1.47 示例程序
| 示例程序 | 基础例程说明 | 依赖库 |
|---|---|---|
| LVGL_Arduino | 测试板载设备功能 | LVGL |
| LCD_Image | 间隔显示 SD 卡根目录 PNG 文件 | PNGdec |
Arduino 工程参数设置

LVGL_Arduino
【硬件连接】
- 将板子接入电脑
【代码分析】
- setup()
Flash_test():测试并打印设备的闪存大小信息SD_Init():初始化 SD 卡LCD_Init():初始化显示屏Set_Backlight(90):设置背光亮度为 90Lvgl_Init():初始化 LVGL 图形库Lvgl_Example1():调用特定的 LVGL 示例函数Wireless_Test2():进行无线通信的测试函数调用
- loop()
Timer_Loop():处理定时器相关任务的函数RGB_Lamp_Loop(2):每隔一定时间间隔更新 RGB 灯的颜色
【运行效果】
-
LCD 屏幕显示

信息
LVGL 更多学习及使用可参考 LVGL 官方文档
LCD_Image
【SD 卡准备】
-
将 waveshare 所提供的图片示例加入到 SD 卡中


【硬件连接】
- 将包含示例图片的 SD 卡插入到设备中
- 将板子接入电脑
【代码分析】
-
setup()
Flash_test():测试并打印设备的闪存大小信息SD_Init():初始化 SD 卡LCD_Init():初始化显示屏Set_Backlight(90):设置背光亮度为 90
-
loop()
Image_Next_Loop("/", ".png", 300):每隔一定时间间隔依次显示 SD 卡根目录下的 PNG 文件RGB_Lamp_Loop(2):每隔一定时间间隔更新 RGB 灯的颜色
【运行效果】
-
LCD 以一定间隔时间依次显示 SD 卡下根目录的 PNG 文件


