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 保护外壳,方便安装使用,带外壳更安全

产品参数

参数名称参数
供电电压7~36V (或 5V/1A Type-C接口)
接口RS485 、 CAN
接线端口Type-C
通信协议USB协议
产品尺寸88(H)x 122(V) mm

资源简介


  1. ESP32-S3

    主频高达 240MHz,搭载 2.4GHz Wi-Fi 和低功耗蓝牙

  2. DC-DC 电源模块

    电源模块,支持高达 3.3V 2A 输出

  3. 排针接口

    可通过排针连接其他功能模块

  4. 电源接线端子

    支持 DC 7V ~ 36V 宽电压范围供电

  5. USB Type-C 接口

    可用于设备供电、固件下载和 USB 通信

  6. RTC 电池接口

    接入可充电的 RTC 电池 (SH1.0)

  7. 贴片陶瓷天线
  8. IPEX 1 代座子

    可通过拆焊电阻切换为使用外部天线

  9. 16MB Flash
  10. 数字隔离

    避免外部信号干扰控制芯片

  11. CAN 转换芯片
  12. 工作指示灯

    PWR:电源指示灯
    RS485:有数据从 RS485 接口发出时亮绿灯,有数据从 RS485 接口发回时亮蓝灯
    CAN:CAN 指示灯,CAN 接口存在数据通信时闪烁

  1. 设备 BOOT 按键
  2. 设备复位按键
  3. 电源隔离

    提供稳定隔离电压,隔离端无须额外供电

  4. RS485 匹配电阻

    预留 120R 匹配电阻,可跳线帽使能

  5. CAN 匹配电阻

    预留 120R 匹配电阻,可跳线帽使能

  6. RS485、CAN 通信接口

    支持连接外部 RS485 设备与 CAN 设备

  7. RTC 时钟芯片

    PCF85063 RTC 时钟

  8. DC-DC 电源芯片
  9. ME6217C33M5G

    低压降 LDO,电流 (Max) 800mA

  10. RS485 转换芯片
  11. 板载 TVS (瞬态电压抑制管)

    可有效抑制电路中的浪涌电压和瞬态尖峰电压




接口介绍


产品尺寸


用电安全注意事项

  • 本产品须由专业的电工或技术人员作业使用,使用过程中请做好用电安全,防漏电和绝缘等保护措施。
  • 请妥善安装放置继电器设备产品,请勿在潮湿、过热、易燃坏境中使用,避免因安装或使用不慎,引发安全事故。

使用说明

ESP32-S3-RS485-CAN 目前提供 Arduino IDE开发工具和框架,你可以根据项目需求和个人习惯选择适合的开发工具。

开发工具介绍


Arduino IDE

Arduino IDE是一款便捷灵活、方便上手的开源电子原型平台。不需要太多基础,简单学习后,你也可以快速地进行开发。同时,Arduino 拥有庞大的全球用户社区,提供了海量的开源代码、项目示例和教程,还有丰富的库资源,封装了复杂功能,让开发者能快速实现各种功能。


器件准备

在操作前,建议先浏览目录,快速了解文档结构。为顺利操作,请仔细阅读FAQ,提前了解可能的问题。文档中所有资料均提供超链接,方便下载。

Arduino开发

本章介绍 Arduino 环境搭建,包括 Arduino IDE、ESP32板管理、相关库的安装,程序编译下载及示例程序测试,帮助用户掌握开发板,便于二次开发。

环境搭建

下载和安装 Arduino IDE

  • 点击访问Arduino官网,选择对应的系统和系统位数下载。

  • 运行安装程序,全部默认安装即可。

安装 ESP32 开发板

  • ESP32相关主板在Arduino IDE使用,须先安装“esp32 by Espressif Systems”库。
  • 根据板安装要求进行安装,一般推荐“在线安装”, 若在线安装失败,则使用“离线安装”。
  • 安装教程,详见:Arduino 板管理教程
  • ESP32-S3-RS485-CAN 所需开发板安装说明
板名称板安装要求版本号要求
esp32 by Espressif Systems“离线”安装/“在线”安装3.0.x

安装库

  • 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装若库安装要求离线安装,则必须使用提供的库文件
    对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。
  • 库安装教程,详见:Arduino 库管理教程
  • ESP32-S3-RS485-CAN 库文件存放于示例程序中,点击此处跳转:ESP32-S3-RS485-CAN 示例程序
  • ESP32-S3-RS485-CAN 库文件安装说明
库名称说明版本库安装要求
ArduinoJson轻量 JSON 库v6.21.4“在线”或“离线”安装
PubSubClientMQTT 消息订阅发布库v2.8.0“在线”或“离线”安装
NTPClient网络时间同步客户端库v3.2.1“在线”或“离线”安装
LVGL更多学习及使用可参考LVGL官方文档

运行第一个 Arduino 程序


如果你刚入门学习ESP32和Arduino,还不知道如何创建、编译、烧录和运行Arduino ESP32程序,那么请展开看看,希望可以帮助到你!

新建工程

  • 运行Arduino IDE,选择 File -> New Sketch

  • 输入代码:
void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("Hello, World!");
  delay(2000);
}
  • 保存代码工程,选择 File -> Save As...;在弹出的菜单选择保存工程路径,并输入工程名,如 Hello_World,点击保存

编译和烧录程序

  • 选择对应的开发板,以ESP32S3主板为例:

①. 点击选择下拉框选项“Select Other Board and Port”;
②. 搜索需要的开发板型号“esp32s3 dev module”并选择;
③. 选择COM口
④. 保存选择。

  • 若ESP32S3主板只有USB口,须打开(Enable)USB CDC,如下图所示:


  • 编译并上传程序:

①. 编译程序;②. 编译并下载程序;③. 下载成功。

  • 打开串口监视窗口,程序每隔2秒会打印“Hello World!”,运行情况如下所示:


示例程序


  • ESP32-S3-RS485-CAN 示例程序
示例程序基础例程说明依赖库
01_MAIN_WIFI_APRS485 接口控制,CAN 接口控制,蓝牙控制,蓝牙发送IP,Web页面控制(近距离)可直接烧录
Web 页仅连接到设备 WIFI 才可使用
02_MAIN_WIFI_STARS485 接口控制,CAN 接口控制,蓝牙控制,蓝牙发送IP,Web页面控制(近距离)需 修改 要连接的 WIFI
Web页仅内网使用

Arduino 工程参数设置


01_MAIN_WIFI_AP

【程序说明】


  • 本示例实现了通过 WiFi 去控制 RS485 和 CAN 接口,此示例开启的是WiFi的AP模式

【注意事项】


  • 可直接烧录
  • Web 页仅连接到设备 WIFI 才可使用

【Web页面控制】


02_MAIN_WIFI_STA

【程序说明】


  • 本示例实现了通过 WiFi、蓝牙和 RS485 去控制 6 个继电器的开关,此示例开启的是WiFi的STA模式

【注意事项】


  • 需修改要连接的 WIFI
  • Web页仅支持控制设备和本产品在同一网络下使用,若使用手机端控制,需关掉移动网络

【Web页面控制】


Flash固件的烧录与擦除

  • 当前示例程序有提供测试固件,可通过直接烧录测试固件来测试板载设备功能正常与否
  • bin文件路径:
    ..\ESP32-S3-RS485-CAN\Firmware\Factory bin

资料

示例程序

数据手册

ESP32-S3

软件工具

Arduino

VScode

Thonny

调试工具

其他资料链接

FAQ

问题:模块下载程序后,重新下载,有时会出现无法连接串口,或者烧录失败的情况?

  • 可长按BOOT按键,同时按下RESET,然后松开RESET,再松开BOOT按键,此时模块可进入下载模式,可解决大部分无法下载的问题。


问题:模块出现一直复位的情况,从设备管理器查看识别状况会一闪一闪的?

  • 这种情况可能是由于 Flash 空白导致 USB 口不稳定,可长按BOOT按键,同时按下RESET,然后松开RESET,再松开BOOT按键,此时模块可进入下载模式烧录固件(程序)即可解决该情况。


问题: 程序首次编译超级慢怎么处理?

  • 首次编译很慢属于正常情况,耐心等待即可


问题: ESP-IDF烧录成功串口显示“waiting for download...”怎么处理?

  • 若开发板有复位键则按下复位键;若没有复位键,请重新上电


问题: 找不到AppData文件夹怎么处理?

  • 部分AppData文件夹是默认隐藏的,可以设置为显示。
  • 英文系统:资源管理器->View->勾选“Hidden items”
  • 中文系统:文件资源管理器->查看->显示->勾选“隐藏的项目”


问题: 怎么查看自己使用的COM口?

  • 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


问题:请注意!

  • 出厂程序仅供学习,若用于实际应用请自行优化程序逻辑。


问题:使用RS485控制其他设备时不灵敏、或通信不上?

  • 请将跳线帽移至 120R 再次尝试,部分 RS485 设备需要串入 120R 电阻


技术支持

周一-周五(9:30-6:30)周六(9:30-5:30)

手机:13434470212

邮箱:services04@spotpear.cn

QQ:202004841

TAG: ST总线舵机驱动板 树莓派7寸DSI MIPI显示屏LCD 720x1280 ESP32-P4 Luckfox Lyra RK3506/Omni3576 树莓派机器人 ESP32-P4 PICO开发板C6 WiFi6 MIPI DSI 10.1寸显示屏/CSI摄像头/音频喇叭 小智 AI Deepseek 使用手册 树莓派机器人驱动板 树莓派PICO LoRa HF RS485转以太网 使用手册 树莓派4 PiKVM-A3 V3 HAT远程控制kvm运维overip服务器HDMI CSI Lichee-Tang Nano FPGA系列安装IDE PWM数字舵机电机35/20KG.CM大扭矩可180° WP5320 WP5335 树莓派Pico 2 RP2350工业级6路继电器RS485隔离保护 树莓派8寸DSI MIPI显示屏LCD 800x1280 ESP32-P4 Luckfox Lyra RK3506/Omni3576 树莓派5以太网供电 树莓派Pico 2 RP2350 2寸LCD开发板电容显示触摸屏 QMI8658 6轴/ OV5640摄像头/SD 树莓派Pico 1.14寸LCD RV1103 LVGL 树莓派5 CM4-Lite版本镜像烧录步骤