I2C通讯原理

2023-12-15 10:26:50

非常感谢,UP出的学习视频:https://www.bilibili.com/video/BV1QN411D7ak/?p=13&spm_id_from=pageDriver

SDA是数据线

SCL是时钟线

I2C的通讯时序

1.在没有数据传输的时候,SDA和SCL由于有上拉电阻的存在,上面的电压,都为高电平。

2.在数据开始传输的时候,SDA开始下拉。

3.时钟线,开始下拉的时候,代表,SDA此时的电平开始变化。

4.当时钟线,为高电平的时候。。。从机设备,会读取SDA上的电平状态。
在这里插入图片描述
5.当数据接收完成后,从机需要发送一个ACK信号-------实际上,就是在,SCL低电平时,从机设备将SDA拉低一下。
在这里插入图片描述


当主机发送数据结束后!!!
6.SCL上的时钟信号还是由,主机发出。
7.从机控制信号,进行下拉,从而实现0,1的跳变。
8.当SCL为低的时候,单片机读取SDA上的信号。
9.当主机接收完8位后,主机发送ACK信号----也就是,SDA下拉一下。
10.主机将SCL持续设为高电平,随后,SDA也变为高电平。。。I2C通讯结束!!!!
在这里插入图片描述


IIC规则,IIC从机地址为7位,所以,需要左移1位。。。。如果主机要读数据,就最后一位 ,要写1…要写数据,最后一位要为0.

文章来源:https://blog.csdn.net/zuoheizhu/article/details/134977710
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。