挂在IIC总线上有三个设备,用普通的电阻上拉够了吗?还是非要MOS管加电阻上拉才更好?

2019-03-23 17:28发布

如图,自一张图是我自己平时用的电路连接方式,这次想做四轴,所以在一个IIC上要挂MPU6050,磁力计,气压计。我去淘宝上看有专门将这三个传感器做在一起的模块,电路连接时IIC总线是还用到MOS的,这样有什么好处吗??使IIC总线上的电流增大而增大驱动能力?我想能简化一点就简化一点的。模电小白希望大神指点。 1506345390(1).jpg 1506345347(1).jpg
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
dontium
1楼-- · 2019-03-23 20:10
 精彩回答 2  元偷偷看……
chenbingjy
2楼-- · 2019-03-23 20:21
一般上拉电阻都是4.7K吧
赵怡彬
3楼-- · 2019-03-23 22:23
dontium 发表于 2017-9-25 21:53
这电路是在哪儿找的?
这个是电平匹配用,可不是扩展电流的。

IIC设备本来就是低速的。使用负载电阻越 ...

第二个图是淘宝模块的电路图。谢谢建议,那我就用我自己的方案好了
huaiqiao
4楼-- · 2019-03-23 23:20
 精彩回答 2  元偷偷看……
yang_alex
5楼-- · 2019-03-24 00:53
本帖最后由 yang_alex 于 2017-9-26 09:37 编辑

这两个上拉电阻不仅仅是电平匹配!

要真正了解为什么需要这两个电阻的原因,首先要了解这SDA和SCL两个端口的内部电路。
下面这张图就很好的说明了,原来这两个端口内部是OD门(开漏门)。
OD门.JPG

而这个OD门的主要作用是防止I2C总线冲突。其机理是这样的:

I2C总线是一个真正的多主机总线,如果两个或更多主机同时初始化数据传输,就有可能出现总线冲突。SDA 和 SCL 都是双向线路,都通过一个上拉电阻连接到电源VCC。 当总线空闲时这两条线路都是高电平。连接到总线的器件输出级必须是漏极开路或集电极开路才能执行线与的功能。主机只能在总线空闲的时侯启动传输,当 SCL 线是高电平时,仲裁在 SDA 线发生。 这样, 在其他主机发送低电平时, 发送高电平的主机将断开它的数据输出级因为总线上的电平与它自己的电平不相同。

此外,即使在一主多从的系统中,由于SDA 是大家一起使用的,所以当一个设备(或器件)不用的时候,把它固定成0或1都必将导致总线冲突,同时自己在通讯时还要检测总线是否被占用,所以线与功能的OD门是一个很好的选择。

由于OD门具有线与功能,所以不同电压的器件(或器件),也可以连接在一起,从而实现电平匹配的功能。但是需要做一定处理。
22.JPG
最后,上拉电阻的选择涉及两个问题,其一是总线的传输速度,其次是总线上设备(或器件)的数量。
I2C总线支持低速模式100kbit/s 、快速模式400kbit/s 和高速模式3.4Mbit/s ,
下图是快速模式下电阻取值图
r.JPG

最后,给大家一份资料吧,使用I2C总线,总线协议总是要看一看的。
i2c总线协议(中文版).pdf (845 KB, 下载次数: 64) 2017-9-26 09:34 上传 点击文件名下载附件

赵怡彬
6楼-- · 2019-03-24 06:37
yang_alex 发表于 2017-9-26 09:34
这两个上拉电阻不仅仅是电平匹配!

要真正了解为什么需要这两个电阻的原因,首先要了解这SDA和SCL两个端 ...

大神,幸苦了谢谢!!我好好研究下

一周热门 更多>