I2C写是怎么区分传输的是命令还是数据呢?

2019-07-20 18:11发布

最近在学mpu6050,遇到一个相当难受的问题。例程是原子的mpu6050六轴传感器实验
螺旋仪的从I2C地址为0X68

IIC_Send_Byte((addr<<1)|0);//(addr为0x68,左移一位变成了0xd0),为什么这时候表示写命令?

IIC_Send_Byte((addr<<1)|1);//这时候又变成读命令了,话说I2C传输的数据的最后一位怎么变成了读命令以及写命令的了?我看教程的这里没有明确讲。

%X]OUS7H~H2AAL%8_Z}V)4K.png

请问谁能救救我

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
login
1楼-- · 2019-07-20 18:12
自己的贴自己答。

地址位只传7位,所以最后那位是什么都没关系的。
山峰雪狼
2楼-- · 2019-07-20 22:03
好好看看时序图,如果没用,那为什么地址是7位,而不是8位
寂青山
3楼-- · 2019-07-21 02:11
 精彩回答 2  元偷偷看……

一周热门 更多>