跳到主要内容

Arduino 开发

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

Arduino 入门教程

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

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

配置开发环境

1. 安装和配置 Arduino IDE

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

2. 其他提示

  1. 在开发板管理器中,选择 "ESP32H2 Dev Module" 型号进行开发。

选择型号

  1. ESP32-H2-Zero 使用 ESP32-H2 原生 USB 接口,而非 UART 转 USB。对于串口通信:

    • printf() 函数可直接使用;

    • 若要使用 Serial.println() 函数,需要额外配置:在 IDE 工具菜单中启用 "USB CDC On Boot" 选项,或在代码中声明 HWCDC 对象处理 USB 串口通信。

示例程序

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

示例程序基础例程说明依赖库
01_BLE蓝牙调试助手可搜索到 ESP32 设备并连接-
02_BlinkRGBRGB 灯呼吸效果闪烁变色-
03_UART使用原生 USB 端口串口打印,需开启 USB CDC On Boot-
04_ZigbeeZigbee 通信测试-
05_GetChipID读取芯片 ID-
06_lvgl8.4.0_demo通过 1.83inch LCD Module 实现文本效果lvgl8.4.0
07_lvgl9.2.2_demo通过 1.83inch LCD Module 实现文本效果lvgl9.2.2
08_1.83inch连接 1.83inch LCD Module 屏幕,实现颜色循环测试、触摸功能测试和图片滑动切换LovyanGFX 1.2.26

01_BLE

本示例演示 BLE 广播,在蓝牙调试助手可以搜索到 ESP32-H2-Zero 设备,连接后可在调试助手中发送信息至开发板,需开启 USB CDC On Boot。

提示

开发板管理器 esp32 by Espressif Systems 版本为 3.3.10

运行效果

02_BlinkRGB

本示例演示板载 RGB 灯的呼吸效果,RGB 灯会闪烁并循环变色。

运行效果

03_UART

本示例通过原生 USB 端口输出串口信息。如果使用 Serial.println() 输出,需要在 Arduino IDE 中启用 "USB CDC On Boot"。

运行效果

04_Zigbee

本示例演示 Zigbee 通信测试。

参数配置

将准备烧录 light 示例的开发板配置为 Zigbee ED (End Device)

将准备烧录 switch 示例的开发板配置为 Zigbee ZCZR (Zigbee Coordinator/Zigbee Router)

运行效果

按下 switch 开发板的 BOOT 按键,可控制 light 开发板的 RGB LED。

05_GetChipID

本示例读取并打印芯片 ID。

运行效果

06_lvgl8.4.0_demo

本示例使用 LVGL 8.4.0、GFX_Library_for_Arduino 和 SensorLib 实现文本显示。如果需要查看串口输出,请启用 "USB CDC On Boot"。

硬件连接

1.83inch Touch LCD ModuleESP32-H2-Zero
VCC3V3
GNDGND
LCD_DINGPIO2
LCD_CLKGPIO1
LCD_CSGPIO5
LCD_DCGPIO3
LCD_RSTGPIO4
LCD_BLGPIO24

运行效果

串口监视器波特率需为 115200 才会打印以下字符串。

07_lvgl9.2.2_demo

本示例使用 LVGL 9.2.2、GFX_Library_for_Arduino 和 SensorLib 实现文本显示。如果需要查看串口输出,请启用 "USB CDC On Boot"。

硬件连接

1.83inch Touch LCD ModuleESP32-H2-Zero
VCC3V3
GNDGND
LCD_DINGPIO2
LCD_CLKGPIO1
LCD_CSGPIO5
LCD_DCGPIO3
LCD_RSTGPIO4
LCD_BLGPIO24

运行效果

串口监视器波特率需为 115200 才会打印以下字符串。

08_1.83inch

本示例演示了如何基于 ESP32-H2 开发板和 Arduino 框架驱动 1.83inch Touch LCD Module 触控液晶模组,实现颜色循环测试、CST816S 触摸功能测试,并使用 LovyanGFX 直接显示图片,支持通过左滑、右滑手势完成图片切换操作。

硬件连接

1.83inch Touch LCD ModuleESP32-H2-Zero
VCC3V3
GNDGND
LCD_DINGPIO2
LCD_CLKGPIO1
LCD_CSGPIO5
LCD_DCGPIO3
LCD_RSTGPIO4
LCD_BLGPIO24
TP_SDAGPIO25
TP_SCLGPIO22
TP_RSTGPIO10
TP_INTGPIO11

运行效果

修改项目 arduino.ino 中的 DEMO_IMAGE_ALBUM 宏可切换两种演示模式:

  • #define DEMO_IMAGE_ALBUM 0 时:

    • LCD 颜色循环测试:

      LCD 颜色测试 1LCD 颜色测试 2LCD 颜色测试 3LCD 颜色测试 4
    • LCD 触摸测试:

  • #define DEMO_IMAGE_ALBUM 1 时:

    • LVGL 图片切换测试:

      LVGL 图片切换测试 1LVGL 图片切换测试 2LVGL 图片切换测试 3

文档反馈

如在使用过程中遇到问题,欢迎留言反馈。