请教:请各位大哥帮我看看这个 I2C 问题,谢谢!

[复制链接]
 楼主| 星星电灯 发表于 2007-4-13 10:46 | 显示全部楼层 |阅读模式
请教:
我的 芯片是带 SMBUS(也就是 I2C)


现在问题是:
并不是每个 I/O 都能做 I2C ,是吗?
我的 P1.0,P1.1 是用 SMBUS 

其他引脚用 I2C ,那就软件模拟,是吗?



现在有两个器件需要用到 I2C ,
那么有个器件只能用 别的 I/O ,用软件模拟来实现,是吗?

谢谢!
ddb_21ic 发表于 2007-4-13 10:49 | 显示全部楼层

I2C是总线方式,可以连多个器件

zhaoyu2005 发表于 2007-4-13 10:54 | 显示全部楼层

硬件I2C总线只能是固定的引脚,模拟I2C可以是任何I/O口

你还是没好好看书,既然I2C有地址当然就支持寻址功能,既然支持寻址功能总线上就可以挂一个以上的器件,既然可以挂一个以上的器件,两个器件当然可以共用总线,SDA接一起,SCL接一起
甄蔡组合 发表于 2007-4-13 11:10 | 显示全部楼层

那位大虾有I2C资料 给小弟发一个

 楼主| 星星电灯 发表于 2007-4-13 11:36 | 显示全部楼层

谢谢楼上三位大哥,还是有点不明白

问题1:
总线到底是一根线,还是两根线的?
问题2:
我挂的器件本身就是有地址的,是吗?
问题3:
我的芯片是自己带 SMBUS 的,那么
(好象是 P1.0,P1.1)
那么我的 I2C 最好是用这两根脚,是吗?

谢谢!
qixiboy 发表于 2007-4-13 12:00 | 显示全部楼层

I2C

1:I2C总线是一种串行数据总线,只有二根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址。

2:是,由于I2C总线可挂接多个串行接口器件,在I2C总线中每个器件应有唯一的器件地址,按I2C总线规则,器件地址为7位数据(即一个I2C总线系统中理论上可挂接128个不同地址的器件),它和1位数据方向位构成一个器件寻址字节,最低位D0为方向位(读/写)。器件寻址字节中的最高4位(D7~D4)为器件型号地址,不同的I2C总线接口器件的型号地址是厂家给定的,如AT24C系列E2PROM的型号地址皆为1010,器件地址中的低3位为引脚地址A2A1A0,对应器件寻址字节中的D3、D2、D1位,在硬件设计时由连接的引脚电平给定。

3:是
zgl7903 发表于 2007-4-13 20:52 | 显示全部楼层

IIC的传送速率早就突破100K了,高速的可以达到1Mbps

您需要登录后才可以回帖 登录 | 注册

本版积分规则

74

主题

121

帖子

1

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