I²C高速模式和普通模式有啥区别?

Posted strongerHuang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了I²C高速模式和普通模式有啥区别?相关的知识,希望对你有一定的参考价值。

关注+星标公众,不错过精彩内容

作者 | strongerHuang

微信公众号 | 嵌入式专栏

I²C,也叫IIC,是Inter Integrated Circuit的缩写。

首先,肯定有小伙伴会问:I²C支持3.4 M/s 这么高的速度吗?

答案肯定是支持的,而且还支持更高的5M/s(单项传输)。

今天就是说说I²C速度以及高速模式(3.4Mbit/s)的内容。

I2C速度

I²C最初的速度是100 kbit/s,但随着市场的变化,要求越来越高,依次出现了几种更高的速度:400 kbit/s、 1 Mbit/s、 3.4Mbit/s 和 5 Mbit/s的速度。

双向通信速度(模式):

100 kbit/s:标准模式,Standard-mode (Sm);

400 kbit/s:快速模式,Fast-mode (Fm);

1 Mbit/s:快速模式+,Fast-mode Plus (Fm+);

3.4Mbit/s:高速模式,High-speed mode (Hs-mode);

单向通信速度(模式):

100 kbit/s:超快模式,UItra Fast-mode (UFm)。

可以参看I²C协议手册:

I²C高速模式

通常,I²C用的最多也就是100 kbit/s(标准模式)和 400 kbit/s(快速模块)这两种通信速度。

因为常规I²C设备的通信速度不高,再次就是标准(快速)模式电路更简单(更省钱),所以标准(快速)模式最为广泛,以至于很多开发者认为I²C的通信速度很低。

I²C总线的成功,以及大面积的使用,使其很多子设备都遵循I²C协议。但是,市场需求总是千变万化,有些设备要求总线挂更多设备、通信速度更快。

所以,3.4Mbit/s 的高速模式就这样在原有的基础上“升级”而来,而且,要向下兼容早期的标准模式

高速模式协议

I²C要达到3.4 Mbit/s,和标准模式的协议肯定有一些差异,下面描述一下高速模式常见的一些通信协议内容。

1.驱动电路

标准、高速混合模式下,驱动电路会有一些差别:

为了提高时钟速度,在(3)的位置增加了电流源上拉,这样才使SCLH时钟信号更快更稳。

2.传输格式

高速模式是向下兼容标准模式,所以,传输格式兼容标准格式的同时,还做了一定改进。

起始条件一样,后面传输的时候,启动高速(电流源)会增加传输数据速率。

然后,传输格式也做了一定改进:

3.模式切换

快速模式向下兼容标准模式,而高速模式又要向下兼容标准模式,因此,I²C总线在起始状态不能处于高速模式,需要由快速模式切换到高速模式。

切换到高速模式,又可以切回快速模式,这样就能保证I²C总线上可以挂各种设备(混合各种模式设备)。

这里附一个混合总线的通信速度:

4.其他

高速模式虽然解决了传输速度的问题,但同时也带来了诸多问题,控制器的升级、传输线要求更高等,使其推广还是受到了一定阻碍,导致没有大面积使用。

最后,关于I²C高速模式,不是很建议大家深入研究,做一个了解即可,只要别人问你时,你不要回答I²C不支持Mbit/s传输就行了。

------------ END ------------


●专栏《嵌入式工具

●专栏《嵌入式开发》

●专栏《Keil教程》

●嵌入式专栏精选教程

关注公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。


点击“阅读原文”查看更多分享。

以上是关于I²C高速模式和普通模式有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

硬盘的IDE模式 AHCI模式 SATA模式分别代表啥意思,有啥区别?

RPG三原色和CMYK模式有啥区别?

C中文件操作的文本模式和二进制模式,到底有啥区别?

Ctrl+C 和 Ctrl+[ 有啥区别?

msp430各种低功耗模式有啥区别

android rgb888和argb565有啥区别