IIC基本介绍

IIC物理层介绍
1、IIC总线是一个支持设备的总线,IIC只使用两条总线线路,一个是双向串行数据线(SDA),一个是串行时钟线(SCL)。数据线用来收发数据,时钟线用于数据收发同步。
2、每个连接到总线的设备都有一个独立的地址,主机立用这个地址进行不同设备间的访问。
3、总线通过上拉电阻接到电源。当IIC设备空闲时,会输出高阻态,而当所有设备都空闲,都输出高度态时,总线会被上拉电阻拉成高电平。
4、多个主机同时使用总线时,为了防止数据冲突,会利用仲裁方式决定有哪个设备占用。
5、IIC用三种传输模式:标准传输模式为100kbit/s,快速模式为400kbit/s,高速模式可达3.4Mbit/s。
6、连接到相同总线的IC数量收到总线的最大电容400PF限制。

IIC协议层介绍
`IIC协议层定义了通讯的起始和停止信号、数据有效性、响应、仲裁、时钟同步和地址广播等环节。
IIC基本读写过程
起始信号S有主机的IIC接口产生,这时连接到主机的所有设备都会接收到这个信号。
起始信号产生后,所有从机开始等待主机广播下来的从机的地址信号,在总线上,所有从机的地址都是唯一的,当主机广播的地址与设备的地址匹配后,这个设备就被选中,地址不匹配的设备会忽略之后的数据信号。从机的地址信号可以时7位和10位的。
主机发送完地址信号后接着发送传输方向的选择位,0表示数据的传输方向由主机传至从机,即主机写数据,1表示数据的传输方向由从机传至从机,及主机读数据。
从机匹配地址后,会返回一个应答(ACK)或非应答信号(NACK),主机只有接收到从机的应答信号后,主机才能继续向从机发送数据。(写数据过程) 读数据过程即主机要向从机发送应答或非应答信号,从机只有收到主机发送的应答信号,才能继续向主机发送数据
写数据
当配置的方向传输位为“读数据”方向时,主机广播完地址,并接收到从机的应答信号时,主机开始正式向从机传输数据,一次传输的 数据大小为8位,主机每发送完一个字节后,都要等待从机的应答信号,可以重复这个过程。当像停止发送数据时,主机向从机发送一个停止信号(P),表示不在传输数据。
读数据
当配置的方向传输位为“读数据”方向时,主机广播完地址,并接收到从机的应答信号 后,从机开始向主机发送数据,数据的大小为8位,从机每发送完一个数据,都会等待主机的应答信号,可重复此过程。当主机向停止接收数据时,就向从机发送一个非应答信号(NACK),则主机自动停止发送数据。
读和写数据
IIC更常用的是复合格式,该传输过程有两次起始信号(S)。一般在第一次传输中,主机通过地址找到设备后,发送一段数据,这段数据通常用于表示该设备内部寄存器或存储器的地址;第二次传输中,则对该地址进行读或写。 (第一次告诉从机要读写的地址,第二次才真正进行数据的传输)

信号的起始(S)和停止信号(P)
当SCL为高电平SDA来一个下降沿意味着通讯的开始。当SCL为高电平SDA来一个上升沿代表通讯的结束。
数据有效性
IIC使用SDA来传输数据,并使用SCL来同步数据。SDA数据线在SCL的每个时钟周期传输一位数据。传输是,SCL为高电平时SDA表示的数据有效,SCL为低时,SDA表示的数据无效,一般在SCL为低电平时SDA进行数据的切换,为表示下一个的数据做准备。
地址及数据方向
设备地址可以是7位或11位,数据传输方向位和7位地址位一起传送。读数据方向时(相当于从机向主机写数据)由从机控制SDA线,写数据方向时,SDA由主机控制。
响应
当设备接收数据后,若希望对方继续发送,则向对方发送应答信号,发送方会继续发送下一个数据;若接收方不想接收数据时,则向对方发送非应答信号,发送方接收到非应答信号后会产生一个停止信号,从未结束信号传输。
传输时主机产生时钟,通讯开始后,发送端发送完地址及传输方向位信号时(前8位),第九位时数据发送端会释放SDA的控制权,由数据接收端控制SDA ,若SDA为高电平,表示产生非应答信号,低电平表示产生应答信号。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: IIC (Inter-Integrated Circuit) 是一种串行通信协议,用于在两个或多个芯片之间进行数据传输。IIC 时序是指在 IIC 协议中,数据和时钟信号的传输时序。IIC 时序通常由以下几个信号组成: 1. SCL (Serial Clock):时钟信号,用于同步数据传输。 2. SDA (Serial Data):数据信号,用于传输数据。 3. START:开始信号,表示传输开始。 4. STOP:停止信号,表示传输结束。 5. ACK (Acknowledge):应答信号,用于确认数据传输是否成功。 IIC 时序的基本流程如下: 1. 主机发送 START 信号。 2. 主机发送设备地址和读写位(0 表示写,1 表示读)。 3. 设备应答主机是否存在。 4. 主机发送数据。 5. 设备应答数据是否接收成功。 6. 主机发送 STOP 信号。 在 IIC 协议中,时钟信号由主机控制,数据信号由主机和设备共同控制。IIC 时序必须满足时序规范,以保证数据传输的正确性。 ### 回答2: IIC(Inter-Integrated Circuit)时序是指在IIC通信协议中数据传输的时间序列。IIC是一种常用于芯片之间进行短距离通信的串行通信协议,由飞利浦公司(现在的恩智浦半导体)于1982年推出。 IIC时序包括开始传输、地址传输、数据传输和停止传输四个过程。 开始传输是指在通信开始时,主设备(通常是芯片或处理器)发送一个START信号。这个信号告诉从设备(如传感器或存储器)即将开始通信。START信号由主设备产生,并且在时钟线和数据线都为高电平时发送。 地址传输是指主设备发送从设备地址的过程。主设备将其地址发送到数据线上,并且在其后发送一个R/W位(读/写位)来指示主设备是要读取数据还是写入数据。 数据传输是指主设备和从设备之间的实际数据传输过程。主设备通过将数据位发送到数据线上,从设备则通过将相应的数据位返回到数据线上实现数据交换。 停止传输是指在通信结束时,主设备发送一个STOP信号,这个信号告诉从设备通信结束。STOP信号由主设备产生,并且在时钟线为高电平、数据线从低电平变为高电平时发送。 在IIC通信中,时钟线和数据线都是双向传输数据的。主设备通过控制时钟线上的时钟信号来同步数据的传输,而数据线上的数据由主设备和从设备共享。 总之,IIC时序是指在IIC通信中主设备和从设备之间的数据传输的时间序列,包括开始传输、地址传输、数据传输和停止传输等过程。掌握IIC时序能够确保通信的准确性和稳定性。 ### 回答3: IIC,全称为Inter-Integrated Circuit,是一种串行通信接口协议,也被称为I2C(Inter-IC)总线。IIC通信协议是由飞利浦公司(现在的恩智浦半导体)于1982年推出的一种通信协议,用于在芯片、模块和外围设备之间进行数据传输和通信。 IIC时序主要包括以下几个方面: 1. 起始信号(Start Signal):IIC通信的起始信号由总线上的SDA(Serial Data Line)和SCL(Serial Clock Line)线组成,当SDA线从高电平变为低电平时,SCL线为高电平,表示起始信号产生。 2. 扩展起始信号(Repeated Start Signal):在数据传输过程中,若需要在不释放总线的情况下重新请求总线访问权限,则发送扩展起始信号,即在先前的起始信号后再次发送一个起始信号。 3. 结束信号(Stop Signal):I2C通信的结束信号由SDA线从低电平变为高电平,同时SCL线为高电平表示。表明数据传输完成。 4. 数据传输:通过IIC通信进行数据传输时,每个数据字节的传输由8个时钟周期组成。数据从主设备或从设备的传输顺序是通过地址和读写位来控制的。 5. 确认信号(ACK Signal):在主设备发送一个字节后,接收设备会通过拉低SDA线来发送一个确认信号,表示已成功接收到数据。主设备会在接收到确认信号后继续发送下一个字节。 IIC时序是通过控制SDA和SCL线的电平变化实现的,通过上述时序的规定和控制才能够在IIC总线上进行数据传输和通信。IIC通信协议广泛应用于各种电子设备和芯片中,如传感器、存储器、显示屏等,提供了一种快速、简单、灵活的通信方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值