IIC协议原理简介

1 IIC概述

IIC总线是PHLIPS公司推出的一种双向、二线、同步、串行总线。

感官认识:下图是带IIC接口的EEPROM封装图。

IIC协议原理简介_第1张图片

引脚说明如下:

IIC协议原理简介_第2张图片

 

下图是IIC总线系统的典型接法。IIC总线由一条双向数据线SDA和一条时钟线SCL组成。Master按IIC的通信协议时序,对Slave进行寻址和信息传输。IIC总线的数据传输速率有标准模式(100kbps)、快速模式(400kbps)和高速模式(3.4Mbps)。

IIC协议原理简介_第3张图片

 

2 通信协议

 

(1)总线空闲:

SDA:高电平

SCL:高电平

 

(2)开始和终止信号

IIC协议原理简介_第4张图片

SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;

SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。

 

(3)数据有效性

IIC协议原理简介_第5张图片

时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化。

 

(4)字节传送与应答

IIC协议原理简介_第6张图片

每一个字节必须保证是8位长度。数据传送时,先传送最高位(MSB),每一个被传送的字节后面都必须跟随一位应答位(即一帧共有9位)。

 

(5)总线寻址

规定: 采用7位的寻址字节(寻址字节是起始信号后的第一个字节),用来寻址从机器件,并规定数据传送方向。

D7~D1位组成从机的地址。D0位是数据传送方向位,为“0”时表示主机向从机写数据,为“1”时表示主机由从机读数据。

 

主机发送地址时,总线上的每个从机都将这7位地址码与自己的地址进行比较,如果相同,则认为自己正被主机寻址,根据R/W位将自己确定为发送器或接收器。

 

从机的地址由固定部分和可编程部分组成。在一个系统中可能希望接入多个相同的从机,从机地址中可编程部分决定了可接入总线该类器件的最大数目。如一个从机的7位寻址位有4位是固定位,3位是可编程位,这时仅能寻址8个同样的器件,即可以有8个同样的器件接入到IIC总线系统中。

 

6IIC写数据时序

IIC协议原理简介_第7张图片

 

7IIC读数据时序

IIC协议原理简介_第8张图片

IIC协议原理简介_第9张图片

注意IIC读数据时序,Master要重复发一次起始信号,并发出器件地址和读方向位(“1”)。

                欢迎关注我的微信公众号:FPGA干货架

                                                                   IIC协议原理简介_第10张图片

你可能感兴趣的:(FPGA)