基于ESP32的单节工业级RS485转以太网/WiFi转换器

syzen
39
2026-06-19

本帖记录一下制作基于ESP32的485+网口的转换器过程中遇到的问题以及踩坑记录

一.项目概况

1.主要芯片

主控芯片为乐鑫的 ESP32-WROOM-32E-N4

以太网收发芯片为WCH(南京沁恒) CH390D

485芯片为 BL3085(I47)

2.原理图介绍

由于是公司产品,原理图无法放出,所以只能口述做踩坑演示

产品定位工业级产品,系统所有供电均由市电提供

供电拓扑大致为:

市电---Fly_Buck---15V---Buck---3.3V

功能性拓扑:

ESP32---CH390D---RJ45

---BL3085---485接口

二.踩坑问题

按照上述拓扑参考Datasheet,基本功能都能实现,下述所有问题全部是基于EMC相关问题

1.晶振

参考官方CH390D的Datasheet,使用25M晶振。

"CH390D 已内置了晶体 X1 的部分振荡电容,C7 和 C8 可以根据晶体参数调节。对于负载电容为12pF 的 X1,无需 C7 和 C8;对于负载电容为 20pF 的 X1,C7 和 C8 建议各 15pF"

上述这句话是官方DATASHEET里的原话,我使用的晶振负载电容20pF,参考上述内容,C7 C8应该使用15pF,但实际情况是,使用了15pF的电容,晶振并未起振,拿掉电容恢复正常。

2.EMC整改

在38M,70M时会呈现弦波高峰,160M,280M,320M,400M时会出现突起尖峰,初步判断38M,70M为开关电源引起,160M,280M,320M,400M由ESP晶振耦合引起。

开关电源极易产生开关时的尖峰,变压器后级的续流二极管并联RC可以很好的吸收尖峰,一开始沿用公司之前的设计,RC分别为20R,470pF,但辐射干扰RE测试70M部分凸起严重,适当减小电容,从470pF逐渐往下减,尝试了220pF,100pF,68pF,实际上,在到68pF时,70M部分已经明显下降,但此时辐射传导CE测试在3M-5M部分余量严重不足,后来尝试继续调小电容,到22pF,电阻增大到750R,70M已经下降到标准线下5db,但CE测试在3M-5M虽然有一点下降,但余量还是差一点。

经过提醒,可以改变变压器初级次级的跨地电容Y电容大小,原本Y电容为470pF,后更换为680pF,CE测试在3M-5M有明显下降。

38M部分,设备如果485接口和网线接口都不接线,38M部分是不超的,一旦接线,38M直接超标准线5db以上,尝试继续调整RC,和Y电容,发现没有什么改变,怀疑38M不是开关电源引起的,停掉主控和以太网芯片,38M部分还是存在,确定确实是开关电源引起。

接线超但不接线就不超,判断38M可能耦合到电源或者GND,接线后相当于天线,直接把信号放大,就想能不能在接口处抑制,让38M直接泄放到地回路,不经过线。

想要泄放到地,发现rj45只有中心抽头通过1uF连接到地,遂调整电容大小,1uF有点大,感觉泄放不了高频,于是调整到0.1uF,再经过测试,发现38M有明显下降。

160M,280M,320M,400M时会出现突起尖峰,在485 AB 线串联100R电阻,尖峰减小,有明显改善。

动物装饰