[牛人杂谈] 非标I2C让人头大的原因

[复制链接]
1305|8
 楼主| heisexingqisi 发表于 2023-11-21 16:56 | 显示全部楼层 |阅读模式
本帖最后由 heisexingqisi 于 2023-11-21 16:57 编辑

如果有这么一个芯片,I2C接口,通信协议是:开始信号+地址+(寄存器地址,末尾1表示读,末位0表示写)+读或者写数据。
看起来没什么,觉得还OK了,其实这种情况对于很多标准的I2C接口是束手无策了,因为标准的I2C是这样的
开始信号+(地址,末位1表示读,末位0表示写)+寄存器地址+读或者写操作。
关键就在从机是什么时候识别这个读写位的,如果是在开始信号后的第一个字节,那么就是标准的I2C协议,如果是在第二个字节,那完了,跟标准不一致,标准的这个时候可能就认为是写操作呢,结果却是读操作。。。
98610655c702c308ac.png
以上为标准I2C读写

以下是非标准的I2C读写时序
89189655c706b4458a.png
现在知道大家为何都讨厌非标协议了吧。
chenqianqian 发表于 2023-11-21 23:06 来自手机 | 显示全部楼层
非标就用软件模拟IIC吧
jf101 发表于 2023-11-22 13:15 | 显示全部楼层
长距离使用I2C的问题怎么解决?
Henryko 发表于 2023-11-22 20:22 | 显示全部楼层
jf101 发表于 2023-11-22 13:15
长距离使用I2C的问题怎么解决?

长距离就不适合使用iic
szt1993 发表于 2023-11-23 14:43 | 显示全部楼层
碰到能解决问题其实就还好
elephant00 发表于 2023-11-23 15:07 | 显示全部楼层
非标I2C通信的复杂性可能会让人感到头大
guijial511 发表于 2023-11-24 08:24 来自手机 | 显示全部楼层
IIC本来就简单,还搞个非标。
Jacquetry 发表于 2023-11-25 08:53 来自手机 | 显示全部楼层
非标是为了避开专利吗
 楼主| heisexingqisi 发表于 2023-11-29 20:29 | 显示全部楼层
Jacquetry 发表于 2023-11-25 08:53
非标是为了避开专利吗

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

本版积分规则

157

主题

2770

帖子

2

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