对iic总线来说工作在中断和非中断模式在时序上是相同的,只不过在非中断模式下是通过检测ACK信号来判断从设备响应了,在中断模式下是通过中断信号来判断从设备响应了,一般是读主CPU侧的iic控制器的中断标志来判断的。
master发送slave地址后接收到ACK信号然后产生中断,slave 接收到的数据是自己的地址时会产生中断。
如果在进行了一个操作从设备没有中断信号响应的话,那么iic的SCL会被拉低,一直等待。
根据IIC协议,IIC从机可以在通讯过程中通过拉低SCL线迫使主机进入等待状态,当从机准备好之后再释放SCL线继续数据传输.也就是当iic中断标志位被置1时,SCL是被拉低的,当我们检测到中断标志位被置1时需清空该寄存器以便使能下一组数据的发送那么当从设备发生异常情况,无法应答时,从设备也会主动将SCL拉低,阻止后续数据的继续发送。
IIC中断和非中断模式
最新推荐文章于 2025-06-14 10:35:45 发布