对IIC总线时序的一点理解以及ACK和NACK(NAK)

本文深入解析IIC通信协议中的响应机制,包括主机如何控制SCL和SDA,从设备如何通过ACK和NACK进行响应。在每个字节接收后,从设备需在第九个时钟脉冲期间通过SDA线产生ACK或NACK。主机则通过读取SDA状态来确认从设备是否响应。当从设备完成数据发送后,主机必须发出不响应位,以通知从设备停止发送。
摘要由CSDN通过智能技术生成

参考自:http://blog.chinaunix.net/uid-16100003-id-3059814.html

关于IIC的响应问题对于每一个接收设备(从设备,slaver),当它被寻址后,都要求在接收到每一个字节后产生一个响应。因此,the master device 必须产生一个额外的时钟脉冲(第九个脉冲)用以和这个响应位相关联。

在这个脉冲期间,发出响应的从设备必须将SDA拉低并在时钟脉冲的高电平期间保持住。这表示该设备给出了一个ACK。如果它不拉低SDA线,就表示不响应(NACK)。

另外,在从机(发送方)发送完最后一个字节后主设备(接收方)必须产生一个不响应位,用以通知从机(发送方)不要再发送信息了,这样从机就知道该将SDA释放了,而后,主机发出一个停止位给slaver。

总结下,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值