ESP32-S3-RS485-CAN
| ||||||||||||||||||||||||||
| ||||||||||||||||||||||||||
产品介绍
产品简介
ESP32-S3-RS485-CAN 是一款基于 ESP32-S3 主控,支持 WiFi、蓝牙、RS485、CAN 等外设接口的工业级 WiFi 无线通信器。内置电源隔离、光耦隔离等保护电路,安全稳定更可靠,适用于AIoT领域。
产品特性
- 基于 ESP32-S3 单片机,其上搭载 Xtensa 32 位 LX7 双核处理器,主频高达 240MHz
- 集成 2.4GHz WiFi 和低功耗蓝牙 (Bluetooth LE) 双模无线通信,具有优越的射频性能
- 板载隔离型 RS485 接口,方便外扩接入各种 RS485 Modbus 工业扩展模块或传感器
- 板载 USB Type-C 接口,可用于供电和下载调试,方便开发使用
- 板载有接线端子供电接口,支持 7~36V 宽电压范围供电
- 板载数字隔离,避免外部信号干扰控制芯片
- 板载一体式电源隔离,可提供稳定的隔离电压,隔离端无须额外供电
- 板载电源、 RS485 收发指示灯、CAN 指示灯,方便感知设备的运行工作状态
- 导轨式 ABS 保护外壳,方便安装使用,带外壳更安全
产品参数
| 型号 | ESP32-S3-RS485-CAN | |
|---|---|---|
| 微控制器 | ESP32-S3 (默认为 ESP32-S3R8 芯片,可定制) | |
| 无线通信 | 2.4GHz Wi-Fi (802.11 b/g/n)、Bluetooth 5 (LE) | |
| USB 接口 | 接口形式 | USB Type-C |
| 供电电压 | 5V | |
| 功能 | 设备供电、USB 通信和固件下载等 | |
| 隔离型 RS485 通信接口 |
接口形式 | 接线端子 |
| 方向控制 | 通过主控硬件流设定自动控制 | |
| 接口保护 | 提供 TVS 管保护、浪涌和静电保护 | |
| 匹配电阻 | 默认 NC,预留 120R 匹配电阻,可跳线帽使能 | |
| 隔离型 CAN 通信接口 |
接口形式 | 接线端子 |
| 方向控制 | 硬件自动判别和控制数据传输方向 | |
| 接口保护 | 提供 TVS 管保护、浪涌和静电保护 | |
| 匹配电阻 | 默认 NC,预留 120R 匹配电阻,可跳线帽使能 | |
| 指示灯 | PWR | 电源指示灯,接入 USB,检测到电压则亮红灯 |
| RS485 | RS485 指示灯: 有数据从 RS485 接口发出时亮绿灯 有数据从 RS485 接口发回时亮蓝灯 | |
| CAN | CAN 指示灯,CAN 接口存在数据通信时闪烁 | |
| 端子供电 | 供电范围 | 7V ~ 36V |
| 产品外观 | 外壳 | 导轨式保护外壳 |
| 尺寸 | 91.6 × 23.3 × 58.7 (mm) | |
资源简介
|
①. ESP32-S3 ②. DC-DC 电源模块 ③. 排针接口 ④. 电源接线端子 ⑤. USB Type-C 接口 ⑥. RTC 电池接口 ⑦. 贴片陶瓷天线 ⑨. 16MB Flash ⑪. CAN 转换芯片 |
⑬. 设备 BOOT 按键 ⑯. RS485 匹配电阻 ⑰. CAN 匹配电阻 ⑱. RS485、CAN 通信接口 ⑲. RTC 时钟芯片 ⑳. DC-DC 电源芯片 ㉒. RS485 转换芯片 |
接口介绍
| 上侧端子说明 | 下侧端子说明 | |||
|---|---|---|---|---|
| 供电端子 | 电源正极:DC 7V ~ 36V | RS485 端子 | A+ 信号引脚 | |
| 电源负极 | ||||
| Type-C | 可用于设备供电、 固件下载和 USB 通信 |
B- 信号引脚 | ||
| SH1.0 | GND | 地线 | CAN 端子 | H 信号引脚 |
| 3V3 | 3.3V 供电输出 | |||
| GPIO2 | 扩展 IO | L 信号引脚 | ||
| GPIO1 | 扩展 IO | |||
产品尺寸
使用说明
ESP32-S3-RS485-CAN 目前提供 Arduino IDE开发工具和框架,你可以根据项目需求和个人习惯选择适合的开发工具。
开发工具介绍
Arduino IDEArduino IDE是一款便捷灵活、方便上手的开源电子原型平台。不需要太多基础,简单学习后,你也可以快速地进行开发。同时,Arduino 拥有庞大的全球用户社区,提供了海量的开源代码、项目示例和教程,还有丰富的库资源,封装了复杂功能,让开发者能快速实现各种功能。 |
器件准备
- ESP32-S3-RS485-CAN x1
- USB线 type A公口 转 Type C公口 x1
- USB TO RS232/485 x1
- USB-CAN-A x1
Arduino开发
本章介绍 Arduino 环境搭建,包括 Arduino IDE、ESP32板管理、相关库的安装,程序编译下载及示例程序测试,帮助用户掌握开发板,便于二次开发。
环境搭建
下载和安装 Arduino IDE
- 点击访问Arduino官网,选择对应的系统和系统位数下载。

- 运行安装程序,全部默认安装即可。
安装 ESP32 开发板
- ESP32相关主板在Arduino IDE使用,须先安装“esp32 by Espressif Systems”库。
- 根据板安装要求进行安装,一般推荐“在线安装”, 若在线安装失败,则使用“离线安装”。
- 安装教程,详见:Arduino 板管理教程
| 板名称 | 板安装要求 | 版本号要求 |
|---|---|---|
| esp32 by Espressif Systems | “离线”安装/“在线”安装 | 3.0.x |
安装库
- 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装。若库安装要求离线安装,则必须使用提供的库文件
对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。 - 库安装教程,详见:Arduino 库管理教程
- ESP32-S3-RS485-CAN 库文件存放于示例程序中,点击此处跳转:ESP32-S3-RS485-CAN 示例程序
| 库名称 | 说明 | 版本 | 库安装要求 |
|---|---|---|---|
| ArduinoJson | 轻量 JSON 库 | v6.21.4 | “在线”或“离线”安装 |
| PubSubClient | MQTT 消息订阅发布库 | v2.8.0 | “在线”或“离线”安装 |
| NTPClient | 网络时间同步客户端库 | v3.2.1 | “在线”或“离线”安装 |
运行第一个 Arduino 程序
示例程序
| 示例程序 | 基础例程说明 | 依赖库 |
|---|---|---|
| 01_MAIN_WIFI_AP | RS485 接口控制,CAN 接口控制,蓝牙控制,蓝牙发送IP,Web页面控制(近距离) | 可直接烧录 Web 页仅连接到设备 WIFI 才可使用 |
| 02_MAIN_WIFI_STA | RS485 接口控制,CAN 接口控制,蓝牙控制,蓝牙发送IP,Web页面控制(近距离) | 需 修改 要连接的 WIFI Web页仅内网使用 |
Arduino 工程参数设置
01_MAIN_WIFI_AP
【程序说明】
- 本示例实现了通过 WiFi 去控制 RS485 和 CAN 接口,此示例开启的是WiFi的AP模式
【注意事项】
- 可直接烧录
- Web 页仅连接到设备 WIFI 才可使用
02_MAIN_WIFI_STA
【程序说明】
- 本示例实现了通过 WiFi和蓝牙去控制 RS485 和 CAN 接口,此示例开启的是WiFi的STA模式
【注意事项】
- 需修改要连接的 WIFI
- Web页仅支持控制设备和本产品在同一网络下使用,若使用手机端控制,需关掉移动网络
Flash固件的烧录与擦除
- 当前示例程序有提供测试固件,可通过直接烧录测试固件来测试板载设备功能正常与否
- bin文件路径:
..\ESP32-S3-RS485-CAN\Firmware\Factory bin
资料
原理图
示例程序
数据手册
ESP32-S3
软件工具
Arduino
VScode
Thonny
调试工具
其他资料链接
FAQ
- 本产品采用 ESP32-S3 作为主控 MCU,因此 RS485 与 CAN 的通信波特率均可通过软件自由设置。
- CAN(TWAI)接口:理论速率可支持到 1 Mbps。
- RS485(UART)接口:UART 理论速率可支持到 5 Mbps。但由于板子加入了隔离、电平转换及保护电路,实际可用速率会略低。一般推荐设置在115200bps以内,具体可根据实际通信环境和应用环境实测为准。
- 可长按BOOT按键,同时按下RESET,然后松开RESET,再松开BOOT按键,此时模块可进入下载模式,可解决大部分无法下载的问题。
- 这种情况可能是由于 Flash 空白导致 USB 口不稳定,可长按BOOT按键,同时按下RESET,然后松开RESET,再松开BOOT按键,此时模块可进入下载模式烧录固件(程序)即可解决该情况。
- 首次编译很慢属于正常情况,耐心等待即可
- 若开发板有复位键则按下复位键;若没有复位键,请重新上电
- 部分AppData文件夹是默认隐藏的,可以设置为显示。
- 英文系统:资源管理器->View->勾选“Hidden items”
- 中文系统:文件资源管理器->查看->显示->勾选“隐藏的项目”
- Windows系统:
①通过设备管理器查看: 按下Windows + R键打开“运行”对话框; 输入devmgmt.msc并按回车键打开设备管理器; 展开“端口(COM和LPT)”部分,这里会列出所有的COM端口及其当前状态。
②使用命令提示符查看: 打开命令提示符(CMD); 输入mode命令,这将显示所有COM端口的状态信息。
③查看硬件连接: 如果你已经连接了外部设备到COM口,通常设备会占用一个端口号,可以通过查看连接的硬件来确定使用的是哪个端口。
- Linux系统:
①使用dmesg命令查看: 打开终端。
②使用ls命令查看: 输入ls /dev/ttyS*或ls /dev/ttyUSB*来列出所有的串口设备。
③使用setserial命令查看: 输入setserial -g /dev/ttyS*来查看所有串口设备的配置信息。
- 安装MAC 驱动程序后重新烧录。
- 查看原理图,针对不同开发板的Type-C接口,对应代码处理输出不同:
- USB直出的开发板,支持printf函数打印输出,若想支持Serial函数打印输出则需要使能USB CDC On Boot功能或者HWCDC声明
- UART转USB的开发板,支持printf函数和Serial函数打印输出,无需使能USB CDC On Boot
- 出厂程序仅供学习,若用于实际应用请自行优化程序逻辑。
- 请将跳线帽移至 120R 再次尝试,部分 RS485 设备需要串入 120R 电阻
技术支持
联系人:梁工
电话:0755-83043099
微信:扫下方二维码添加
![]()












