CA-IS3082W 隔离485 收发器芯片可能存在硬件BUG
RT,这个RS485 隔离收发器芯片基本上不可用。本来要买CA-IS3082WX,不小心在某宝买到了没有X 的CA-IS3082W。立创上说没有X 的版本已经停产,连对应的数据手册都找不到,全换成WX 了。
这类半双工485 收发器芯片电路一般都直接把DE 和RE# 引脚短接到一块,DE 拉高激活发送器,RE# 拉低激活接收器。发送时,DE 被拉高后,按理说接收器被禁用,RO 引脚应该是高阻态,相应的RO 上的电压应该是稳定的高电平,连接到RO 上的串口RXD 引脚不应该接收到任何信号。而这个芯片的问题就是:拉高DE 后,RO 总会同步的被拉低,于是串口上会接收到一两个虚假的0x00
数据,如下图:
刚开始以为是这个芯片没有所谓的“Fail Safe” 功能,必须外接上下拉电阻,于是在A,B 引脚中间接了120Ω 端接,又分别上拉、下拉了470Ω 电阻,这样能保证485 总线空闲状态有500mV 以上的偏置电压,但症状依旧。拿逻辑分析仪看了引脚上的信号,大概类似这样:
RO 初始高电平,然后总是在DE 拉高一小段时间后拉低,最后再与DE 的下降沿同步上升,所以导致串口RXD 上接收到异常的0x00
数据。反复调试无果,于是换成pin2pin 兼容的NSI83085,外围电路不动,就完全没问题了。只能猜测,W 停产换成WX 说不定就是芯片厂家自己猛然发现有BUG。
总之,下次再买的时候得注意一下,别买到不带X 的。之后闲着没事还可以再试一下,没准这芯片的RE# 引脚其实是高电平有效的,所以DE 拉高以后RE 也被拉高,接收器被激活,就把RO 拉低了。