模拟IIC的时钟延展问题(Clock Stretching)

本文详细介绍了I2C通信中的时钟拉伸现象,指出从设备在需要时可以拉低SCL线减慢总线速度,但可能导致总线带宽降低。在高速模式下,时钟拉伸有特定限制。文章通过分析示波器波形,解释了由于主设备未检查SCL信号导致的数据错误,并提出解决方案——在通信过程中检查SCL电平,确保其为高时再发送时钟信号。最后,作者建议在主机应答位检查子程序中实现Clock Stretching功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

时钟拉伸(Clock stretching)

clock stretching通过将SCL线拉低来暂停一个传输.直到释放SCL线为高电平,传输才继续进行.clock stretching是可选的,实际上大多数从设备不包括SCL驱动,所以它们不能stretch时钟.

链接是IIC标准官网说明http://www.i2c-bus.org/clock-stretching/,贴到这里

Clock Stretching

In an I2C communication, the master device determines the clock speed. Unlike RS232 the I2C bus provides an explicit clock signal which relieves master and slave from synchronizing exactly to a predefined baud rate.

However, there are situations where an I2C slave is not able to co-operate with the clock speed given by the master and needs t

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值