ESP32-S3-Relay-6CH MicroPython 开发
本章节包含以下部分,请按需阅读:
MicroPython 入门教程
初次接触 ESP32 MicroPython 开发,想要快速上手?我们为您准备了一套通用的 ESP32 MicroPython 入门教程。
- 第1节 搭建开发环境
- 第2节 基础知识
- 第3节 GPIO 数字输出/输入
- 第4节 ADC 模拟输入
- 第5节 PWM 输出
- 第6节 UART 通信
- 第7节 I2C 通信
- 第8节 SPI 通信
- 第9节 Wi-Fi 基础用法
- 第10节 网页服务器
- 第11节 蓝牙
- 第12节 综合项目
请注意:该教程使用 ESP32-S3-Zero 作为教学示例,所有硬件代码均基于其引脚布局。在动手实践前,建议您对照手中的开发板引脚图,确认引脚配置无误。
配置开发环境
1. 配置 Thonny 和烧录 MicroPython 固件
- 请参考 搭建 MicroPython 开发环境教程 烧录 MicroPython 固件。
2. 其他提示
- 目前开发板使用定制的固件进行开发,固件在 ESP32-S3-Relay-6CH 示例程序 中,注意下载地址是 0x00 位置
- 固件路径:
..\ESP32-S3-Relay-6CH-Demo\MicroPython\Firmware - 与 Arduino 和 MicroPython 文件夹同级的 Firmware 下的** bin** 文件为测试板载功能的文件,在此处无需烧录
MicroPython 固件编译 更多学习链接
示例程序

ESP32-S3-Relay-6CH 示例程序
| 示例程序 | 基础例程说明 |
|---|---|
| main.py | 主函数 |
| ws_bluetooth.py | 蓝牙初始化及指令解析 |
| ws_gpio.py | RGB、蜂鸣器,继电器初始化 |
| ws_information.py | 全局系统参数设置 |
| ws_relay.py | 实现继电器控制 |
| ws_serial.py | 8 路继电器扩展 |
上传例程
-
将本地文件上传到开发板,选择文件,鼠标右键,找到"upload to/", 进行上传

-
以下是全部文件上传完成的界面,上传的文件请务必与图片内保持一致 ,否则可能会运行失败

运行例程
例程上传并运行后,支持通过 RS485 接口或蓝牙控制板载各个继电器动作。
RS485 控制
将外部 RS485 设备连接至 ESP32-S3-Relay-6CH,发送控制指令即可切换或控制各个继电器的开闭,默认通信波特率为 9600。
控制指令表
| 操作指令 | 指令功能 |
|---|---|
| 06 05 00 01 55 00 A2 ED | 切换 CH1 继电器的状态 |
| 06 05 00 02 55 00 52 ED | 切换 CH2 继电器的状态 |
| 06 05 00 03 55 00 03 2D | 切换 CH3 继电器的状态 |
| 06 05 00 04 55 00 B2 EC | 切换 CH4 继电器的状态 |
| 06 05 00 05 55 00 E3 2C | 切换 CH5 继电器的状态 |
| 06 05 00 06 55 00 13 2C | 切换 CH6 继电器的状态 |
| 06 05 00 FF FF 00 BD BD | 开启所有继电器 |
| 06 05 00 FF 00 00 FC 4D | 关闭所有继电器 |
硬件连接
本示例使用 USB TO RS232/485 转换器 进行连接演示,引脚对照如下:
| ESP32-S3-Relay-6CH | USB-TO-RS232-485 |
|---|---|
| RS485 - A+ | Tx B - A+ |
| RS485 - B- | Rx B - B- |
软件操作
-
打开 SSCOM 串口调试助手,选择转换器 Port B 对应的 COM 端口,波特率设置为
9600。 -
打开串口,可在多条发送列表中预置控制指令并勾选十六进制(HEX)发送:

-
点击对应指令的发送按钮,即可控制继电器动作:

蓝牙控制
使用手机端蓝牙调试助手连接 ESP32-S3-Relay-6CH,发送控制指令即可切换或控制各个继电器的开闭。
部分蓝牙调试助手默认以 ASCII 字符串发送,部分以十六进制(HEX)发送。控制前请根据所用工具选择对应的指令格式。
控制指令表
| ASCII | Hex | 指令功能 |
|---|---|---|
| 1 | 0x31 | 切换 CH1 继电器的状态 |
| 2 | 0x32 | 切换 CH2 继电器的状态 |
| 3 | 0x33 | 切换 CH3 继电器的状态 |
| 4 | 0x34 | 切换 CH4 继电器的状态 |
| 5 | 0x35 | 切换 CH5 继电器的状态 |
| 6 | 0x36 | 切换 CH6 继电器的状态 |
| 7 | 0x37 | 开启所有继电器 |
| 8 | 0x38 | 关闭所有继电器 |
操作步骤
本示例使用手机端蓝牙调试助手 nRF Connect 进行演示(也可选用其他蓝牙调试助手):
-
打开 nRF Connect 扫描蓝牙设备,找到并连接名为
ESP32 S3 Relay 6CH的设备:
-
读取设备 IP(可选):连接成功后展开 Unknown Service 服务,点击读取数据(向下箭头图标):
- 若 Wi-Fi 连接成功,将返回获取到的设备 IP(如图中为
192.168.6.133); - 若 Wi-Fi 长时间未连接成功,板载 RGB 彩灯将常亮红灯,此项无数据返回。

- 若 Wi-Fi 连接成功,将返回获取到的设备 IP(如图中为
-
发送控制指令:继电器控制指令为字符
1~8(即十六进制0x31~0x38)。点击发送按钮(向上箭头图标),选择数据类型(图示以十六进制 BYTE 为例),输入需发送的指令(如31):
-
发送
0x31后,继电器 CH1 状态翻转:
-
如需关闭所有继电器,发送
0x38: