IIC 时钟频率与数据传输速率的理解

By: Ailson Jack
Date: 2019.04.28
个人博客:http://www.only2fire.com/
本文在我博客的地址是:http://www.only2fire.com/archives/98.html,排版更好,便于学习,也可以去我博客逛逛,兴许有你想要的内容呢。

在IIC协议中涉及到两根线:SCL与SDA。SCL就是时钟信号线,SCL线上的频率就叫时钟频率。在对IIC总线进行学习与使用时,经常会听到设置IIC的时钟频率为xxxHz,或者设置IIC的数据传输率为xxxKbit/s。明明概念里可以进行配置的只有一个时钟频率,那么这个数据传输率这位老兄是怎么个情况。

其实,时钟频率(Hz)与数据传输速率(bit/s)两者是相同的概念。

         时钟频率与数据传输率是如何对等的喃。因为一个SCL时钟周期只能传输1bit数据(并且只能在SCL的低电平期间进行SDA数据电平的变化),假如SCL的时钟频率为100KHz,那么1s中就能产生100K个SCL时钟周期,也就是说1s中可以传输100Kbit的数据。此时,可以看出时钟频率100KHz与数据传输率100Kbit/s就是一样的了。

         IIC传输位速率在标准模式下可达100Kbit/s,快速模式下可达400Kbit/s,高速模式下可达3.4Mbit/s;也可以理解为时钟频率在标准模式下可达100kHz,快速模式下可达400kHz,高速模式下可达3.4MHz。

方波在1秒钟内的重复变化次数称为信号的“频率”,用f表示;而把信号波形变化一次所需的时间称作“周期”,用T表示,以秒为单位。

频率和周期的关系是:f=1/T。

我们可以计算一下100KHz的时钟速率对应的一个周期的时间为多少:

T= 1/f = 1/100 000 = 0.00001S = 10us。如果有逻辑分析仪可以看一下,确实是这样子。

下图是我调试IIC过程中,读数据时逻辑分析仪记录的波形:

IIC 时钟频率与数据传输速率的理解_第1张图片

排版更好的内容见我博客的地址:http://www.only2fire.com/archives/98.html
注:转载请注明出处,谢谢!^_^

你可能感兴趣的:(嵌入式学习,嵌入式学习,总线,i2c)