2026/4/6 2:18:54
网站建设
项目流程
网站开发哪个工具,灰色项目网站代做,宝尊电商是做什么的,企业网站备案代理公司I2C#xff08;Inter-Integrated Circuit#xff09;总线是由飞利浦半导体#xff08;现恩智浦半导体#xff09;于 1982 年研发的两线式串行通信标准#xff0c;其发明源于当时电子设备的通信痛点#xff0c;后续凭借独特优势逐步成为电子领域的重要通信协议。其两根通信…I2CInter-Integrated Circuit总线是由飞利浦半导体现恩智浦半导体于 1982 年研发的两线式串行通信标准其发明源于当时电子设备的通信痛点后续凭借独特优势逐步成为电子领域的重要通信协议。其两根通信线为SCL和SDAI2C电路规范所有I2C设备的SCL通信线连在一起SDA连在一起设备的SCL和SDA均要配置成开漏输出模式SCL和SDA个添加一个上来电阻组值一般为4.7kΩ开漏输出和上拉电阻的共同作用实现了“线与的功能”此设计主要是为了解决多机通信互相干扰的问题开漏输出模式原理图当输出1时三极管断开引脚浮空当输出0时三极管闭合引脚接地I2C的时序结构起始条件SCL高电平期间SDA从高电平切换到低电平终止条件SCL高电平期间SDA从低电平切换到高电平如上图所示虚线框内即为重要部分左侧示意图记为S(START)右侧示意图记为P(PAUSE)发送一个字节SCL低电平期间主机将数据位依次放到SDA线上高位在前然后拉高SCL从机将在SCL高电平期间读取数据位所以SCL高电平期间SDA不允许有数据变化依次循环该过程8次即可发送一个字节。虚线框处为重要部分记为S(SEND BYTE)SCL在B7高电平阶段即为读取数据阶段需要注意的是示意图中SDA处两条线并非同时存在在一个时间节点只有存在一个进程示意图表示的是两种不同的情况由低电平转为高电平即为发送1由高电平转为低电平即为发送02.接收一个字节SCL低电平期间从机将数据位一次放到SDA线上高位在前然后拉高SCL主机将在SCL高电平期间读取数据位所以SCL高电平期间SDA不允许有数据变化依次循环上述过程8次即可接收一个字节主机在接收之前需要释放SDA将该部分记为R(RECIEVE BYTE)示意图表示的是两种不同的情况由低电平转为高电平即为接收1由高电平转为低电平即为接收03. 发送应答在接收一个字节后主机在在下一个时钟发送一位数据数据0表示应答数据1表示非应答接收应答在发送一个字节后主机在在下一个时钟接收一位数据判断从机是否应答数据0表示应答数据1表示非应答主机在接收之前需要释放SDA左侧部分为发送应答原理记为SA(SEND ANSWER)右侧部分为接收应答原理记为RA(RECIEVE ANSWER)了解了以上时序结构我们就可以把他们当做不同的模块通过这些模块以不同方式组合就构成了数据帧在通信协议包括I2C中数据帧是指按固定格式组织的用于依次完整数据传输的最小单元简单说就是通信双方 “约定好的数据包格式”—— 发送方按这个格式打包数据接收方按同一个格式解析数据才能保证通信准确无误。数据帧1.发送一帧数据完成任务向谁发送什么其中SLAVE ADDRESS为从机W表示写S表示发送信号RA表示接受信号后给出应答。类似于点名时点名者点名被点名者答到2.接收一帧数据完成任务向谁接受什么其中从机后的R表示读紫色的R表示接收信号SA表示接受信号后给出应答。类似于点名时被点名者答到后点名者收到信息对其进行回应表示已经收到被点名者的信息。3.先发送再接收数据帧复合格式完成任务向谁收指定的什么发送和接收配合使用才能达到I2C通信的目的。