通过实例来分析I2C基本通信协议
创作时间:
作者:
@小白创作中心
通过实例来分析I2C基本通信协议
引用
CSDN
1.
https://blog.csdn.net/blood_defences/article/details/32141245
I2C(Inter-Integrated Circuit)总线是一种串行通信协议,广泛应用于各种电子设备中。本文通过实例详细解析了I2C通信的基本原理和具体过程,包括信号状态、读写协议以及实际应用中的数据传输实例,帮助读者深入理解这一重要的通信技术。
I2C起源于飞利浦公司的电视设计,但之后朝通用路线发展,各种电子设计都有机会用到I2C。总的来说,I2C可以简单归纳为,两根线,一个时钟线,一个数据线;一个总线上,一个主控,多个从设备。I2C的作用当然是用来传输数据,它的最大特点就是仅仅用了2根线,可以完成对总线上多个从设备的有序通信,这就依赖于其通信协议了。
主控相当于I2C的大脑,每一次读写操作都必须是主控发起的。这样就保证了多个从属设备间是无法直接通信的,这样就防止了仅有的2根线上数据传输发生混乱。
我们还是简单回顾一下《I2C 简介》中的I2C 总线的几种信号状态
- 空闲状态:SDA 和 SCL 都为高电平。
- 开始条件(S):SCL 为高电平时,SDA 由高电平向低电平跳变,开始传送数据。
- 结束条件(P):SCL 为高电平时,SDA 由低电平向高电平跳变,结束传送数据。
- 数据有效:在 SCL 的高电平期间,SDA 保持稳定,数据有效。SDA 的改变只能发生在 SCL 的低电平期间。
- ACK 信号:数据传输的过程中,接收器件每接收一个字节数据要产生一个 ACK 信号,向发送器件发出特定的低电平脉冲,表示已经收到数据。
- 空闲状态
当没有数据需要读写时,大家风平浪静,时钟和数据线都是出于高电平状态,但是当传输数据时,就必须有一个规则产生,那就是 - 开始条件(S)
Start: 在clk为高的情况下,data由高变低为start。 - 结束条件(P)
Stop:在clk为高的情况下,data由低变高是stop。 - 数据有效
只有在clk为高的时候,数据才有效。Clk为低,数据无效。 - ACK 信号
每一个字节完成,都会有一个ack,无论由master还是slave发出。ack位是低电平,表示有应答,如果是高电平,表示无应答。 - 读写协议
读数据需要有offset。所以offset需要先用写协议告诉slave,然后再读。
所以一个完整的写协议就是: S 7_BIT_ADD W A OFFSET A RS 7_BIT_ADD R A DATA A P
ST: 起始位
SAD: 设备地址
SAK: 从设备应答位
MAK: 主控应答位
SUB: offset
DATA: 具体数据
SP: 结束位 - 实例分析
二进制串为S 001111000 000010000 {RS} 001111010 110111101 P
翻译就是3C 08 3D DE
另外可以看出,RS restart 和start波形很相似,而且P之前slave没有ack,就说明slave不准备再提供数据了,说明是byte读。
如果要读多byte,因为这个是st的sensor,所以在offset位最高位写1就行了。这是st的private规定。
数据位是S 001100000 001000000 001001110 P
翻译一下就是30 20 27,slave address 18 (30/2) offset 20, data 27.
从图中可以看出,第九位应答位为高,说明并没有master并没有收到应答
数据位是S 001111001 000000001(并不是完整的波形)
翻译一下slave address 1e(3c/2) offset 0 ......
本文简单分析了I2C的读写的具体过程,以及根据几个波形图的实例,分析了具体发送的数据,供大家参考!
热门推荐
欧冠赛场心理博弈与战术策略解析 如何影响球队表现与比赛走向
火车上什么能带,什么不能带?乘火车携带物品指南
自我判断是鼻炎还是感冒
游戏引擎中的物理系统
城市风景线的品质升级——城市核心区高架桥更新关键技术试验研究
产业链与供应链,如何推动酿酒业高质量发展
五联疫苗vs免费单苗,不能只从价格区别来选择
全球首富!马斯克身家超4000亿美元,一文见证马斯克的发家史!
学好高中英语的方法和技巧 有哪些小窍门
神话体系里,真实石矶娘娘是怎样的?
轻松掌握Excel中VBA的使用技巧提升工作效率
从肺结节到肺癌,5个身体预警信号要留意,别等发现就是晚期
分子生物学在中医理论研究中的应用论文
雷忠义:从痰瘀互结到痰瘀毒风互结理论的创新与发展
商家收款码被风控怎么办?五大实用解决方案
优化预约挂号统一平台,解决患者就诊痛点
深入了解标准预防:预防医院感染的关键策略
张艺兴获外媒主编高度评价,国际影响力持续上升
猫咪传染病科普之猫瘟热(Feline distemper)
隧道让生活更美好|杭州文一路提升改造工程顺利通车
清北班学生的压力困境:一个家庭的自救之路
“某地成诺如病毒重灾区”,市民抢药?官方回应→
日晷:古老时间测量工具的历史、原理与文化意义探索
从AI到大数据:打造智能化营销自动化解决方案的核心技术
ESFJ人格类型:特点、职业、挑战与意义
电信网络诈骗?深圳公安教你见招拆招
2024年个人所得税退税全流程指南(图文版)
安徽高校专业调整对接产业图谱
《角斗士II》:雷德利·斯科特掌握最终剪辑权,无导剪版
第一次世界大战中的意大利:作为复兴运动第四次战争的伟大战争