[MCU] i2c主从分开供电,且一方断电后电平无法拉高的问题

[复制链接]
4038|11
 楼主| cgha 发表于 2014-6-10 15:50 | 显示全部楼层 |阅读模式
从机5V,主机3.3V,SDA 和SCL直接连接,上拉电阻为4.7K。通信没有问题。但是问题是当5V端断电,3.3V端还是有电的情况下,电平被拉低到1.8V,是个中间电平,导致主机I2C工作不正常。请问有什么办法可以解决?
lanmp 发表于 2014-6-10 16:52 | 显示全部楼层
上拉电阻拉到3.3了?断了电还要通信么?
ayb_ice 发表于 2014-6-10 17:02 | 显示全部楼层
从机都关闭了,还通信啥嘛
 楼主| cgha 发表于 2014-6-10 17:41 | 显示全部楼层
我的意思是断了电之后主机这边I2C硬件就不正常了,仿真的话是5V断电后主机死循环在发送start信号。
上拉倒3.3V
lanmp 发表于 2014-6-10 22:18 | 显示全部楼层
估计从机也有上拉
ayb_ice 发表于 2014-6-11 08:55 | 显示全部楼层
断电后重新初始化IIC应该就可以了
jjjyufan 发表于 2014-6-11 09:02 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| cgha 发表于 2014-6-11 11:12 | 显示全部楼层
看来只有采用每次读写的时候初始化,读写完成后回到普通IO。
因为从机断电后I2C的IO口为低阻态,jjjyufan的图应该也是没用的,会被拉低。
还好我当时加了一个同步中断信号,从机有数据会拉低这个信号,主机才会去读写。
bob.xue 发表于 2014-6-11 13:11 | 显示全部楼层
串个电阻
yewuyi 发表于 2014-6-11 14:30 | 显示全部楼层
5V端断电时,5V端的SCL/SDA应当是呈现高阻态,你现在出现它拉低对方电压的问题,说明你的电路有问题
MK60 发表于 2014-6-14 11:23 | 显示全部楼层
不带隔离很简单:


上图中的三极管如用场效应管代替,可以省掉47K电阻和5819(大部分场效管都内置这个反向保护二极管)。


要隔离比较麻烦:


上图中的三极管如用场效应管代替,可以省掉两个47K电阻(两个5819不能省)。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
原野之狼 发表于 2014-6-15 09:27 | 显示全部楼层
断电之后对端未必呈现高阻态,所以还是得隔离一下。
不解的是,为什么要设计成这样?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

561

主题

719

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部