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
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!