跳到主要内容

Arduino 开发

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

Arduino 入门教程​

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

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

配置开发环境​

1. 安装和配置 Arduino IDE​

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

ESP32-S3-RS485-WLED 所需开发板安装说明

板名称板安装要求版本号要求
esp32 by Espressif Systems“离线”安装/“在线”安装3.2.0

2. 安装库​

  • 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装 。若库安装要求离线安装,则必须使用提供的库文件
    对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。
  • 库安装教程,详见:Arduino 库管理教程
  • ESP32-S3-RS485-WLED 库文件存放于示例程序中,点击此处跳转:ESP32-S3-RS485-WLED 示例程序

ESP32-S3-RS485-WLED 库文件安装说明

库名称说明版本库安装要求
FastLEDRGB 灯驱动库v3.10.1通过库管理器或手动安装

安装步骤:

  1. 解压已下载的 示例程序包。

  2. 将其 Arduino\libraries 目录下的所有文件夹(FastLED 等)复制到 Arduino 的库文件夹中。

    信息

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

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

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

3. 其他提示​

ESP32-S3-RS485-WLED 需要选择及配置开发板。

  1. ESP32-S3-RS485-WLED 需要选择 ESP32S3 Dev Module。
  2. 选择 USB 端口
  3. ESP32-S3-RS485-WLED 使用 ESP32-S3 原生 USB 接口,而非 UART 转 USB。对于串口通信:
    • printf() 函数可直接使用;

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

  4. 选择 16MB flash
  5. 选择合适大小的分区表

示例程序​

01_Led_example​

注意事项​

注意
  • 外部电源电压必须与灯带的额定工作电压一致。例如,5V、12V、24V 灯带应分别使用对应电压的电源供电。
  • 当灯带负载电流较大时,请使用独立外部电源为灯带供电,本产品仅用于输出控制信号。
  • 接线端子与 USB Type-C 接口不可同时供电。
  • 使用前请确认端子接线牢固,并根据实际负载做好线材选型和散热措施。

硬件连接​

  • 将灯带数据线连接到 GPIO2' 或 GPIO16'
  • 灯带电源连接到 VOUT+ 和 VOUT-

运行效果​

  • WS2812 :灯带按程序设定显示颜色
  • RGBWC :灯带按程序设定显示颜色,显示暖白,冷白效果
  • PWM : 通过修改 ENABLE_BREATHING_PWM 和 FIXED_BRIGHTNESS 宏,控制呼吸灯与亮度

02_Speaker_microphone​

  • 本示例演示 ESP32-S3-RS485-WLED 的音频播放、麦克风录音及录音回放功能。示例使用 ES8389 音频编解码器播放音频,使用 ES7210 音频 ADC 采集板载麦克风数据,并通过 BOOT 按键控制相关功能。

硬件连接​

  • 使用 USB 线把板子接入电脑
  • 接上喇叭或者耳机

代码分析​

  • setup():

    • 初始化音频解码器与按键
  • loop():

    • 按键控制,测试音频输入输出功能

运行效果​

  • 单击 BOOT 按键可播放或暂停内置音频。
  • 长按 BOOT 按键可录制 5 秒音频并自动播放。

03_RS485​

  • 本示例为 USB 与 RS485 数据收发打印。通过 USB 串口发送的数据会转发至 RS485 总线;从 RS485 接收到的数据会通过 USB 串口以 HEX 和 ASCII 两种格式输出。

硬件连接​

代码分析​

  • RS485_Init():

    • 初始化 RS485
  • USB_To_RS485_Loop():

    • 读取 USB 串口数据。
    • 将有效数据发送至 RS485 总线。
  • RS485_Loop():

    • 接收 RS485 数据。
    • 通过 USB 串口分别输出 HEX 和 ASCII 内容。

运行效果​

  • 打开 串口调试助手,发送数据
  • 有数据从 RS485 接口发出时亮绿灯,有数据从 RS485 接口发回时亮蓝灯

04_Main_wifi_ap​

  • 本示例实现了通过 Wi-Fi 去控制 RS485, 灯带,音频采集播放,此示例开启的是 Wi-Fi 的 AP 模式

【注意事项】

  • Web 页仅连接到设备 Wi-Fi 才可使用

硬件连接​

  • 当前程序以 WS2812 灯带为例,将灯带数据线连接到 GPIO2' 或 GPIO16'
  • 灯带电源连接到 VOUT+ 和 VOUT-
  • 接上喇叭或者耳机
  • 接入 USB 转 RS485 转换器

【Web 页面控制】

  • 连接 ESP32-S3-RS485-WLED 设备的 Wi-Fi,默认 Wi-Fi 名称为 ESP32-S3-RS485-WLED,密码为 12345678
  • 连接成功后,打开网页 192.168.4.1
  • 打开 Web 页面即可控制 RS485,灯带,音频播放 (设备上电后需要一小段时间配置,每次上电后首次开启 Web 页面可能比较缓慢)

【运行效果】

  • Web 页面控制