为什么I2C需要时钟延长

时间:2017-10-21 03:55:48

标签: embedded i2c

时钟延长用于降低I2C中的主机速度。如果从机设备是基于I2C的,则表示它可以根据标准在100KHZ下工作。

我的困惑是当主时钟和从机的时钟已经是100KHz时,需要时钟延长吗?

请举例说明..

1 个答案:

答案 0 :(得分:3)

由于Slave可能无法从Master或Slave接收,因此需要额外的时间来处理接收的数据,因此需要时钟延长。

许多Slave设备是低成本设备,没有良好的缓冲系统,需要长时间读取慢速内存并使用时钟延长来防止溢出。

它是一种廉价的速度控制系统(比较复杂的异步连接),安全而简单。

它也可以作为一些低成本设备在处理繁忙任务时CPU无法处理I2C,例如传感器可能需要中断并保持时钟线为低电平,传感器内部作业完成后,传感器将变为高电平并发送正常速度下的数据。

参考:http://cache.freescale.com/files/sensors/doc/app_note/AN4481.pdf P.12