iic 时序 时间详解
时间: 2025-08-19 20:59:13 浏览: 2
### I2C通信协议时序和时间参数详解
#### 一、I2C总线简介
I2C(Inter-Integrated Circuit)是一种简单双向二线制同步串行总线,它只需要两根线即可在集成电路之间传送信息。这两条信号线分别是数据线SDA(Serial Data Line)和时钟线SCL(Serial Clock Line)。设备通过发送起始条件、地址、读/写位、确认应答、停止条件等一系列操作来完成一次完整的通讯过程[^1]。
#### 二、基本传输时序
对于每一次的数据交换,在SCL处于高电平期间,SDA上的任何变化都将被视作控制命令而非有效数据;而在低电平时则可以改变其状态而不影响当前正在处理的信息帧。具体来说:
- **启动条件**:当SCL保持高电平时,SDA由高变低表示开始一个新的事务。
- **结束条件**:同样是在SCL为高的情况下,SDA从低到高的转变标志着此次会话正式终止。
- **数据有效性**:只有当时钟脉冲下降沿到来之后直到下一个上升沿之前这段时间内所维持不变的状态才被认为是有效的比特值。
- **ACK/NACK机制**:接收方会在接收到每一个字节后的第9个周期给出回应——如果拉低SDA即代表成功接受并请求继续发送下一组资料;反之如果不做动作默认就是拒绝或错误响应。
#### 三、标准模式下的时间和电气特性
以下是关于7.2V版本的标准速率下的一些重要定时参数说明:
| 参数 | 描述 |
| --- | --- |
| t<sub>HD;STA</sub>| 起始条件后建立时间为4μs|
| t<sub>HOLD;STA</sub>| SDA稳定持续至少4.7μs才能释放给后续操作|
| T<sub>HIGH</sub>/T<sub>LOW</sub>| 单个时钟周期内的高低电平宽度均为最少4.0μs|
| t<sub>SU;DAT</sub>| 数据设置时间最短需满足100ns|
| t<sub>HOLD;DAT</sub>| 数据保持时间最小也要达到130ns|
这些数值确保了不同芯片间能够可靠地相互通信而不会因为过快的变化速度而导致误判情况发生。
```plaintext
_______ ____________ ___ _____ _______
SCL | |___| |_____| |_____ |______| |__
\_________________/ \____________/
START CONDITION STOP CONDITION
SDA ____\__________________________________/______________________
```
阅读全文
相关推荐













