找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2058|回复: 7
收起左侧

MCU新手关于I2C协议的一些问题

[复制链接]
ID:637758 发表于 2020-6-3 20:29 | 显示全部楼层 |阅读模式
     是这样的,本人一名单片机新手,最近试着做一个项目,用到了多种I2C协议的器件,有0.96寸OLED和MPU6050及BMP180模块,这些器件的SCL和SDA可以连接在一条线上吗,也就是一条总线挂多个不同的器件,那么我用OLED逐个显示他们的数据,怎么才能调用呢,我好像记得有器件地址,是每个模块有固定的地址还是说可以自己定义,我要写一个I2C的头文件,然后多个模块可以共用还是要为每个模块分别写一个呢?烦请高手指点。
回复

使用道具 举报

ID:419968 发表于 2020-6-4 00:02 | 显示全部楼层
都挂在I2C 总线上,设备地址要看具体的设备,有的固定的,
回复

使用道具 举报

ID:732506 发表于 2020-6-4 02:59 | 显示全部楼层
可以连在一条线上,每个器件地址不同,地址是否可调看器件说明,很多可以通过外部引脚调整,避免冲突。
回复

使用道具 举报

ID:744327 发表于 2020-6-4 08:47 | 显示全部楼层
SCL和SDA不可以连接在一条线上,开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据
回复

使用道具 举报

ID:282850 发表于 2020-6-4 09:11 | 显示全部楼层
IIC可以共用总线,但地址要不同,最多8个外围器件。
回复

使用道具 举报

ID:637758 发表于 2020-6-4 09:15 | 显示全部楼层
adject 发表于 2020-6-4 00:02
都挂在I2C 总线上,设备地址要看具体的设备,有的固定的,

谢谢,明白了
回复

使用道具 举报

ID:637758 发表于 2020-6-4 09:15 | 显示全部楼层
hotpet 发表于 2020-6-4 02:59
可以连在一条线上,每个器件地址不同,地址是否可调看器件说明,很多可以通过外部引脚调整,避免冲突。

谢谢指点
回复

使用道具 举报

ID:637758 发表于 2020-6-4 11:46 | 显示全部楼层
烈火 发表于 2020-6-4 08:47
SCL和SDA不可以连接在一条线上,开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据

我的意思是各个器件的SCL和SDA连在一起























回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表