目标:EEPROM-IIC总线理解(一)
1.IIC总线简介
IIC(Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点。I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。由于其管脚少,硬件实现简单,可扩展性强等特点,因此被广泛的使用在各大集成芯片内。
I2C是一个通信协议,它拥有严密的通信时序逻辑要求,而EEPROM是一个器件,只是这个器件采样了I2C协议的接口与单片机相连而已,二者并没有必然的联系,EEPROM可以用其他接口,I2C也可以用在其它很多器件上。
1.1 IIC物理层
I2C通信设备常用的连接方式:
单片机的电源(40脚)连接SDA和SCL不然就没法有高低电平变化了
特点:
(1)它是一个支持多设备的总线。
(2)I2C 总线只使用两条总线线路,SDA、SCL。
(3)每个连接到总线的设备都有一个独立的地址,主机可以利用这个地址进行不同 设备之间的访问。
(4)总线通过上拉电阻接到电源。当 I2C 设备空闲时,会输出高阻态,而当所有设备都空闲,都输出高阻态时,由上拉电阻把总线拉成高电平。
(5)多个主机同时使用总线时,为了防止数据冲突,会利用仲裁方式决定由哪个设备占用总线。
(6)具有三种传输模式:标准模式传输速率为 100kbit/s ,快速模式为 400kbit/s ,高速模式下可达 3.4Mbit/s,但目前大多 I2C 设备尚不支持高速模式。
(7)连接到相同总线的 IC 数量受到总线的最大电容 400pF 限制
1.2 IIC协议层
图片2.pngI2C 的协议定义了通信的起始和停止信号、数据有效性、响应、仲裁、时钟同步和地址广播等环节。
(1)数据有效性规定
要求时钟线在高电平的时候数据线也为高电平保持数据稳定来传输,只要时钟线是低电平是才允许数据进行变化
每次数据传输都以字节为单位,每次传输的字节数不受限制。
(2)起始和停止信号
起始信号与终止信号是由主机发出的,在数据线上表示
(3)应答响应
应答响应是在发送完一个字节后(是以字节为单位进行传输的)从机发出的,表示一个字节发送完了,然后从机可继续接受数据
(4)总线的寻址方式
寻址方式I2C总线寻址按照从机地址位数可分为两种,一种是7位,另一种是10位。采用7位的寻址字节(寻址字节是起始信号后的第一个字节)的位定义如下:
1~7是从机地址位,里面又分为固定地址和可编程部分组成,用来调整地址的个数
R/W是用来决定主机和从机吉安关系的,当R/W = 0,主机发送数据到从机,当R/W = 1,表示主机接收来自从机的数据
网友评论