IIC协议的个人趣味理解

在两间灯火通明的房间里(有上拉电阻的存在,空闲为高电平),一个侦探的一对助手兄妹分别在其中,SCL哥哥和SDA妹妹。侦探发出邀请,只要破解了他的谜题,就能和他一起进行一个侦探对决游戏。大家都参赛报名,有各自的号码牌(设备地址)。然后,他示意SDA妹妹熄灭自己的灯光(拉低电平),察觉到妹妹的动作(SCL为高,SDA由高变低,此为开始信号),SCL哥哥立刻心领神会,开始以固定的节奏开关自己的灯,制造出富有韵律的光影波动(时钟信号)。

在这场光影舞动中,我借助SCL哥哥规律的灯光闪烁,仔细揣摩SDA妹妹用灯光编织的神秘暗号。只有每次SCL哥哥灯光亮起时才能看到SDA妹妹发出的灯光暗号(SCL为高电平时,SDA为有效信息),就这样SDA妹妹传递着邀请参与游戏的信息。

当SCL哥哥的灯光闪烁完毕,完成了8次循环,SDA妹妹也就传递了8次信息(1个字节数据),前7次是邀请参赛者的号码,最后1次是规则,关灯代表侦探写题出题,开灯代表侦探读题解题(前7位代表从机地址,最后1位代表传输方向,低电平为主发从收写操作,高电平主收从发读操作),倘若这串光影密语正是对应我的号码牌(前7位是“我”的设备地址),我会立即响应,示意SDA妹妹熄灭她的灯光(拉低SDA电平作为ACK应答信号)。反之,如果暗号并非为我而设,我便会指示SDA妹妹将灯光亮起,表明我暂无意参与此次对决。

此刻,SCL哥哥再次点亮自己的光芒(SCL变为高电平)。如果侦探看到SDA妹妹的房间回归黑暗,那便是成功的信号(检测ACK为低电平成功连接),意味着我有资格能够和他对决,于是开始出场和我按照规则进行挑战(根据之前电平确定的传输方向,传输内容从地址变为数据),同时为了增加难度,每轮SCL哥哥会一直固定节奏开关灯,只能在灯亮的时候看到题(SCL为高电平时,SDA为有效信息),每一回合的对决完成后,解题方都会根据是否解题成功来决定是否继续挑战(每轮传递一个字节信息,接收方需要发送低电平作为应答位ACK,不断循环至ACK为高电平)。最后,解题方如果无法解出而选择认输后,侦探会指挥SDA妹妹点亮灯光,以结束对决(SCL为高,SDA由低变高,主机将SDA置高电平,此为结束信号),否则对决将会持续进行。

(以上纯属个人理解,不一定完全正确,有不恰当的地方还请指正)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值