IIC总线协议讲解

2024-06-07 06:58
文章标签 讲解 协议 总线 iic

本文主要是介绍IIC总线协议讲解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. I2C总线在传送数据过程中共有三种类型信号:开始信号、结束信号和应答信号
开始信号:SCL为高电平时,SDA由高电平向低电平跳变,表示START。
结束信号:SCL为高电平时,SDA由低电平向高电平跳变,表示STOP。
应答信号:接收数据的Slave在接收到8bit数据后,向发送数据的Master发出特定的低电平脉冲,表示已收到数据。

2. I2C位传输 数据传输:SCL为高电平时,SDA线若保持稳定,那么SDA上是在传输数据;
若SDA发生跳变,则用来表示一个会话的开始或结束
数据改变:SCL为低电平时,SDA线才能改变传输的bit

3. I2C写流程
写寄存器的标准流程为:
(1. Master发起START
(2. Master发送I2C addr(7bit)和w操作0(1bit),等待ACK
(3. Slave发送ACK
(4. Master发送reg addr(8bit),等待ACK
(5. Slave发送ACK(第4步和第5步可以重复多次,顺序写多个寄存器地址)
(6. Master发送data(8bit),即要写入寄存器中的数据,等待ACK
(7. Slave发送ACK
(8. 第6步和第7步可以重复多次,即顺序写多个寄存器数据
(9. Master发起STOP

4. 

  1. I2C读流程

读寄存器的标准流程为:
(1. Master发送I2C addr(7bit)和w操作1(1bit),等待ACK
(2. Slave发送ACK
(3. Master发送reg addr(8bit),等待ACK
(4. Slave发送ACK
(5. Master发起START
(6. Master发送I2C addr(7bit)和r操作1(1bit),等待ACK
(7. Slave发送ACK
(8. Slave发送data(8bit),即寄存器里的值
(9. Master发送ACK
(10. 第8步和第9步可以重复多次,即顺序读多个寄存器

关于24C08芯片的设备地址,

这篇关于IIC总线协议讲解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1038467

相关文章

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Java对接MQTT协议的完整实现示例代码

《Java对接MQTT协议的完整实现示例代码》MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛,:本文主要介绍Ja... 目录前言前置依赖1. MQTT配置类代码解析1.1 MQTT客户端工厂1.2 MQTT消息订阅适配器1.

MySQL连表查询之笛卡尔积查询的详细过程讲解

《MySQL连表查询之笛卡尔积查询的详细过程讲解》在使用MySQL或任何关系型数据库进行多表查询时,如果连接条件设置不当,就可能发生所谓的笛卡尔积现象,:本文主要介绍MySQL连表查询之笛卡尔积查... 目录一、笛卡尔积的数学本质二、mysql中的实现机制1. 显式语法2. 隐式语法3. 执行原理(以Nes

Linux中的自定义协议+序列反序列化用法

《Linux中的自定义协议+序列反序列化用法》文章探讨网络程序在应用层的实现,涉及TCP协议的数据传输机制、结构化数据的序列化与反序列化方法,以及通过JSON和自定义协议构建网络计算器的思路,强调分层... 目录一,再次理解协议二,序列化和反序列化三,实现网络计算器3.1 日志文件3.2Socket.hpp

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、

RabbitMQ消费端单线程与多线程案例讲解

《RabbitMQ消费端单线程与多线程案例讲解》文章解析RabbitMQ消费端单线程与多线程处理机制,说明concurrency控制消费者数量,max-concurrency控制最大线程数,prefe... 目录 一、基础概念详细解释:举个例子:✅ 单消费者 + 单线程消费❌ 单消费者 + 多线程消费❌ 多

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

从入门到进阶讲解Python自动化Playwright实战指南

《从入门到进阶讲解Python自动化Playwright实战指南》Playwright是针对Python语言的纯自动化工具,它可以通过单个API自动执行Chromium,Firefox和WebKit... 目录Playwright 简介核心优势安装步骤观点与案例结合Playwright 核心功能从零开始学习

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、