申明:内容来自用户上传,著作权归原作者所有,如涉及侵权问题,请点击此处联系,我们将及时处理!
0人已收藏
0人已打赏
免费0人已点赞
分享
水文与水资源工程
返回版块4.6 万条内容 · 239 人订阅
阅读下一篇
采用硬件I2C读取E2PROM,单片机复位发生死锁怎么办?采用硬件I2C读取E2PROM,单片机复位发生死锁怎么办? 现象:单片机采用硬件I2C读取E2PROM,当单片机复位时,会有概率出现再无法与E2PROM通信,此时SCL为高,SDA一直为低。 原因:当单片机正在和E2PROM通信,如果主正好发生打算发第9个时钟,此时SCL为高,而从开始拉低SDA为低做准备(作为ACK信号),等待主SCL变低后,从再释放SDA为高。如果此时正好单片机复位,主SCL还没来得及变低,直接变成高电平,此时从还在等待SCL变低,所以一直拉低SDA;而主由于复位,发现SDA一直为低,也在等待从释放SDA为高。因此主从都进入一个相互等待的死锁状态。
回帖成功
经验值 +10
全部回复(0 )
只看楼主 我来说两句抢沙发