A.
二线传输。 I2C 总线上所有的器件和接口模块(统称为节点)都连接在同名的SDA(数据线)和SCL(时钟线)上。
B.
无中心主机。当在总线上接有多个主器件时,每个主器件都可成为主控制器,若某些主器件节点在运行时都企图控制总线,则会形成多主竞争状态。I2C总线系统可保证在多个主器件节点企图控制总线时不会丢失信息,并在总线竞争过程中进行总线控制权的仲裁与时钟同步,仲裁结果只允许其中一个主器件继续占据总线。
C.
软件寻址。当总线上的主控器需要和某个外围器件建立联系时,可通过软件编程的方法,在总线上送出所要寻址的外围器件的地址。总线上每一个可用作被控器的器件都必须有惟一的地址。采用软件寻址方法可避免系统使用大量的片选线,简化电路设计。
D.
应答式数据传输过程。在I2C 总线上,无论是作为主控器还是被控器,在接收对方一字节数据后,都需要回送一个应答位(“0”),以继续传输过程。如需要断开连接,结束下边的数据传输,只需回送一个非应答位(“1”)即可。这种数据传输机制有利于在主、被控器建立连接后,进行连续的批量数据传输。
E.
节点可带电接入或撤出。I2C总线上的每一个节点都是漏极开路或集电极开路结构,尽管各个节点必须共地,但可做到各个节点电源独立,可实现节点的带电移出或接人(热插拔)。