目录
一、IIC总线概述
1.1IIC总线简介
1.2IIC总线通信过程
1.3IIC总线寻址方式
二、IIC总线信号实现
2.1起始信号与停止信号
2.2字节传送与应答
2.3同步信号
三、典型IIC时序
四、小作业
一、IIC总线概述
1.1IIC总线简介
IIC总线是Philips公司在八十年代初推出的一种串行、半双工总线
主要用于近距离、低速的芯片之间的通信;IIC总线有两根双向的信号线一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步;IIC总线硬件结构简单,成本较低,因此在各个领域得到了广泛的应用。
IIC总线是一种多主机总线,连接在IIC总线上的器件分为主机和从机主机有权发起和结束一次通信,而从机只能被主机呼叫;当总线上有多个主机同时启用总线时,IIC也具备冲突检测和仲裁的功能来防止错误产生;
每个连接到IIC总线上的器件都有一个唯一的地址(7bit),且每个器件都可以作为主机也可以作为从机(同一时刻只能有一个主机),总线上的器件增加和删除不影响其他器件正常工作;IIC总线在通信时总线上发送数据的器件为发送器,接收数据的器件为接收器;
1.2IIC总线通信过程
n.通信完成后主机发送停止信号释放总线
1.3IIC总线寻址方式
二、IIC总线信号实现
2.1起始信号与停止信号
空闲时SCL和SDA都是高电平
停止信号产生后总线处于空闲状态
2.2字节传送与应答
IIC总线通信时每个字节为8位长度,数据传送时,先传送最高位,后传送低位,发送器发送完一个字节数据后接收器必须发送1位应答位来回应发送器即一帧共有9位。
2.3同步信号
IIC总线在进行数据传送时,时钟线SCL为低电平期间发送器向数据线上发送一位数据,在此期间数据线上的信号允许发生变化,时钟线SCL为高电平期间接收器从数据线上读取一位数据,在此期间数据线上的信号不允许发生变化,必须保持稳定。
三、典型IIC时序
为了防止总线使用权被别的设备抢走,允许切换数据传输方向时不停止。
注:阴影部分表示数据由主机向从机传送,无阴影部分则表示数据由从机向主机传送;A表示应答, A非表示非应答,S表示起始信号,P表示终止信号 。
四、小作业
若使用IIC总线让从机给主机发送一个字节的数据0xA2,画出SCL和SDA上的时序图
注:从机地址为0x63
图画的太丑了凑合看吧。