【驱动】I2C读写时序

1、I2C总线

I2C使用两条线在主控制器和从机之间通信,SCL(串行时钟线)和SDA(串行数据线),这两条线需接5~10欧上拉电阻,总线空闲空闲时,SCL和SDA处于高电平,I2C总线标准模式速度可以达到100K/S,快速模式可以达到400K/S。
在这里插入图片描述

2、状态

I2C总线有四种状态:空闲、启动、忙碌、停止
1)空闲
当总线为空闲状态时,SDA和SCL两条线路一定都是高电平。但是SDA和SCL两条线路都是高电平时,并不一定是总线空闲状态。
譬如总线正在传输数据“1”时,SDA和SCL都是高电平,但此时并不是总线空闲状态。所以,总线空闲状态不但要求SDA和SCL线要同时为高电平,而且还要求同时为高电平的保持时间不小于tBUF(tBUF:标准模式≥4.7us,快速模式≥1.3us,快速增强模式≥0.5us,超快模式≥80ns)。
在这里插入图片描述

2)启动信号
在时钟线SCL保持高电平期间,数据线SDA上的电平被拉低(即负跳变),定义为I2C总线总线的启动信号,它标志着一次数据传输的开始。

启动信号是由主控器主动建立的,在建立该信号之前I2C总线必须处于空闲状态。

    本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/8384.shtml

    如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

    相关文章

    OpenFeign @PathVariable需注明参数名称

    在定义 OpenFeign 的远程接口时,如果是路径拼接作为参数的远程接口,需要在PathVariable需注明参数名称,不然代码启动时会报错。 正例FeignClient(value ServiceConstants.SYSTEM, fallbackFactory RemoteFileFallbackFactory.class) publi…

    Unity与C#的关系

    第一,我们首先需要知道Unity与C#的关系是什么? 第二,我们要明白为什么Unity会使用C#,而不是C? 第三,我们需要知道Unity是怎么使用C#的? 第一点: 先说结论:C#是Unity用…

    LabVIEW波浪发电平台浮筒取能效率数据采集系统

    LabVIEW波浪发电平台浮筒取能效率数据采集系统 随着化石能源的逐渐减少以及能源价格的上升,寻找可替代的、可再生的、清洁的能源成为了世界各国的共识。波浪能作为一种重要的海洋能源,因其巨大的潜力和清洁性,近年来受到了广泛关注。开发了一…

    Blender修改器

    修改器 Modifier,对模型进行修改,相当于一个函数。 修改器图标是界面右下角的扳手样式 每个修改器的顶部都有如下样式,从左到右分别为:展开/折叠,修改器类型,修改器名称,编辑模式按钮&#xff…

    TCP三次握手四次挥手 UDP

    TCP是面向链接的协议,而UDP是无连接的协议 TCP的三次握手 三次传输过程是纯粹的不涉及数据,三次握手的几个数据包中不包含数据内容。它的应用层,数据部分是空的,只是TCP实现会话建立,点到点的连接 TCP的四次挥手 第四…

    Python生成文学编程风格文档库之pycco使用详解

    概要 Pycco是一个Python库,用于生成文学编程风格的文档。它受到了Docco(一个快速生成源代码文档的工具)的启发,并通过解析源代码旁边的注释来创建一个美观的文档页面,使代码的解释与代码本身并排显示。 安装 安装Pycco非常简单,可以通过Python的包管理器pip进行安装: …

    docker-compose-itd和d

    docker run -itd和-d的区别 前言: ​ 今天在通过docker-compose启动一基于ubuntu的镜像容器时,发现启动后,容器会一直停止。但是通过docker run -itd是可以正常运行的。基于这个区别,找了一位大神(师傅)问…

    vue3与js的router基本使用方式

    title: vue3与js的router基本使用方式 tags: vue3js abbrlink: ‘57270957’ date: 2024-04-17 18:54:47 第一步快捷引入的别名 使用路由需要大量在src文件中引用所需要的地址,并且组件中也需要很多的包的引用,将快速跳转到src这一文件的步骤进行简化操…

    数据可视化与低代码开发应用:开启智能时代新篇章

    随着大数据、人工智能等技术的飞速发展,数据可视化和低代码开发应用已经成为了当今时代最具代表性的技术趋势。本文将探讨其在各个领域的应用与价值,以及如何利用这些技术为企业和个人带来更高的效益。 数据可视化:让数据会说“话” 数据可视…

    【数据处理报错】python空格多个分割字符串

    a file.readline().strip("\n") a_list a.split(" ")这种方法只能分割1个空格,多分出来一个空格数据处理报错直接使用split()就可以了 str_list str.split()参考文章两种方法分割python多空格字符串https://blog.csdn.net/lwgkzl/article/de…

    Redis实际应用中的解决方案

    Redis缓存使用问题 1数据一致性 分析一下几种方案: 1:先更新缓存,再更新数据库 2:先更新数据库,在更新缓存 3:先删除缓存,后更新数据库 4:想更新数据库,后删除缓存 …

    Docker在服务器linux下配置及打包【bash指令】

    1.管理员将用户设置为docker用户 (注意:这里需要服务器管理员进行设置此句) sudo gpasswd -a ${user} docker2.列出docker镜像 docker images 3.列出正在运行的docker容器 docker ps 4.0.创建一个容器 docker pull python3.10 docker p…

    STM32 同时使用 FMC 和 FSMC 问题

    在一个项目中有同时和 FPGA 和 SDRAM 通讯的需求,分别使用 FSMC 和 FMC 来控制。 一般来说 SDRAM 64ms需要刷新所有行。用到的 SDRAM 为 8192 行,时钟用的 100M,故刷新寄存器计数值为 1560,正常也就这么写了。 但是在使用中发现…

    前端 Android App 上架详细流程 (Android App)

    1、准备上架所需要的材料 先在需要上架的官方网站注册账号。提前把手机号,名字,身份证等等材料准备好,完成开发者实名认证;软著是必要的,提前准备好,软著申请时间比较长大概需要1-2周时间才能下来&#xf…

    需求文档怎么写?

    1. 导言 我也来个导言: 写这篇博客的目的就是来解答一下下面几个问题: 需求文档怎么写?需求文档都应该包含哪些内容?怎样才算一个合格的需求文档? 产品需求文档(Product requriement document)&#xff…

    全网首发亲测有用:python免费将chatgpt机器人接入个人微信(同时支持钉钉、QQ 以及别的语言模型如文心一言等)

    一、获得免费chatgptAPI https://github.com/chatanywhere/GPT_API_free?tab=readme-ov-file 点击这个就可以获取一个免费的CHATGPT API key 或者觉得不够用的话,也可以付费购买在里面,看着价格很便宜,个人没有买过 tips: 转发API无法直接向官方接口api.openai.com发起…

    Clickhouse 字符串函数 - 2

    reverse​ 反转字符串。 reverseUTF8​ 以Unicode字符为单位反转UTF-8编码的字符串。如果字符串不是UTF-8编码,则可能获取到一个非预期的结果(不会抛出异常)。 format(pattern, s0, s1, …)​ 使用常量字符串pattern格式化其他参数。pat…

    笔试强训Day20 动态规划 模拟

    经此一役小红所向无敌 题目链接&#xff1a;A-经此一役小红所向无敌_牛客小白月赛37 (nowcoder.com) 思路&#xff1a; 水题 直接跟思路即可。 AC code&#xff1a; #include<iostream> using namespace std; typedef long long LL; LL a1,a2,b1,b2,t1,t2,sum; int m…

    Spring中的DigestUtils:数据摘要的艺术与实用

    1. 概述 DigestUtils 是 Spring Framework 提供的一个实用工具类&#xff0c;用于生成数据的摘要&#xff08;也称为哈希或散列&#xff09;。它封装了常见的哈希算法&#xff0c;如 MD5、SHA-1、SHA-256 等&#xff0c;使得开发者能够方便地对字符串、字节数组或其他数据源进…

    专题五_位运算(3)

    目录 137. 只出现一次的数字 II 解析 题解 面试题 17.19. 消失的两个数字 解析 题解 137. 只出现一次的数字 II 137. 只出现一次的数字 II - 力扣&#xff08;LeetCode&#xff09; 解析 注意这里指的是比特位上的01来进行统计的 题解 class Solution { public:int sin…