IIC协议相关

news2024/12/26 0:23:10

一.IIC协议初识

IIC(集成电路总线),半双工同步通信方式

*特点

1.简单性和有效性

由于接口直接在组件之上,因此IIC总线占用的空间特别小,减少了电路板的空间和芯片管脚的数量,降低了互联成本,总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。

2.多主控

其中任何能够进行发送和接收的设备都可以成为主线,一个主控能够控制信号的传输和时钟频率。当然,在任何 时间点上只能有一个主控。

*构成

IIC串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL,其时钟信号是由主控器件产生。所有接到IIC总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线SCL上对于并联在一条总线上的每个IC都有唯一的地址。

二.IIC协议

IIC总线在传输数据的过程中一共有三种类型信号,分别为:开始信号、结束信号和应答信号,这些信号中,起始信号是必须的。

 根据时序图我们可以写出这些:

:_nop()_执行这个语句耗时5us. 

三.IIC协议发送一个字节的函数封装

我们在发送字节之前先看看数据发送的时序是怎样的?

 注:列出这张图就是要提醒,我们每传一bit数据时,要保证scl处于低电平状态,因为scl处于高电平状态时,会被误认为是起始信号或者停止信号(scl=1)。

函数封装: 

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

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

相关文章

Figma转Sketch的3种免费又快捷的方法!

Figma和Sketch是UI设计师常用的两款软件。Figma属于在线协作设计工具,而Sketch是一款本地应用程序。它们都有许多优点,深受许多设计师的喜爱。然而,在实际工作中,有时需要将这两种文件进行转换,例如将需要在Sketch中使…

AI绘画——Night Sky YOZORA Model 模型 ——“实现终极图像质量和大图像尺寸(>1536 x 1024)”

目录 Night Sky YOZORA Model 模型 ——“实现终极图像质量和大图像尺寸(>1536 x 1024)”由YozoRaAru培训 如果你需要更好的色彩表现,我推荐你试一下Color Box 省流版介绍:一个字“炫”,tag也是越炫越好 以下是…

javaweb830在线答疑系统dzkfA1A5程序

2.系统用户管理:不管是超级管理员还是普通管理员都需要管理系统用户,包括普通管理员的添加、删除、修改、查询,修改管理员的登录密码,新添加的管理员用户可以登录系统。 3.注册用户管理:游客在前…

多因子优化,多任务优化,多模式优化之间的区别

最近几年在进化计算这个圈子里多任务优化Multitasking很火,其中包含多因子Multifactorial Evolutionary, 多任务 Multitasking Evolutionary, 和多模式进化 Multiform Evolutionary。 今天就来讲讲他们之间的区别。 多因子优化 在“Enhancing Evolutionary Multi…

CCF-CSP真题《202303-1 田地丈量》思路+python,c++满分题解

想查看其他题的真题及题解的同学可以前往查看:CCF-CSP真题附题解大全 试题编号:202303-1试题名称:田地丈量时间限制:1.0s内存限制:512.0MB问题描述: 问题描述 西西艾弗岛上散落着 n 块田地。每块田地可视为…

HTTP与HTTPS详解

一、HTTP的概念 HTTP是超文本传输协议,是一种应用层协议,是基于为浏览器/服务器间提供统一的信息交换格式而出现的,其发展历程为HTTP/1.0、HTTP/1.1、HTTP/2、HTTP/3。 在HTTP/3之前,HTTP都是基于TCP传输的。 二、HTTP报文格式 …

设计模式之状态模式(C++)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 一、状态模式是什么? 状态模式是一种行为型的软件设计模式,当一个对象的内在状态改变时,其行为…

C++ Linux Web Server 面试基础篇-操作系统(二)

⭐️我叫忆_恒心,一名喜欢书写博客的在读研究生👨‍🎓。 如果觉得本文能帮到您,麻烦点个赞👍呗! 近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三连支持一下呗。👍⭐️❤️ Qt5.9专栏定期更新Qt的一些项目Demo 项目与…

ClickHouse分区表的正面与侧面

当我们处理连续数据并需要基于移动窗口(如,仅使用过去三个月数据)计算时使用分区功能非常有用,因为分区无需删除数据,就能高效避过不使用的(或过期)数据。本文介绍分区表原理,对比查…

一文读懂|数字化到底是什么?

现在大家都在说数字化,数字化到底是什么? 翻阅很多关于数字化的文章,大部分都在混淆术语,部分文章已经开始将数字化标记为数字化转型,以安抚管理层、获得项目批准或进行销售...... 所以这篇内容,我会尽可…

第十四章 动手,高级写法应用让SQL飞

参考《收获,不止SQL优化》作者: 梁敬彬 / 梁敬弘 所谓高级SQL,就是内部被优化过的SQL,可以用简单的语法实现复杂的功能,同时性能上还有提升。比如INSERT ALL、WITH子句、MERGE…… 一、 高级写法思维导图(自己整理&am…

java连接webservice

前言 WebService 也叫XML Web Service,WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。 一、…

什么是 IT 基础架构管理

各行各业的企业组织不断面临创新和扩展的压力。就在十多年前,一个企业组织可以争取时间,在投资新技术方面保持保守,同时仍然保持竞争优势。快进到今天,随着业务实践的变化和新技术的不断涌现,商业和技术格局更加动态。…

【C++】文件IO流及stringstream流的使用

文章目录 一、引入二、自定义类型隐式类型转换三、sync_with_stdio同步四、文件IO流4.1 open和close文件4.2 写入文件与读出文件 五、stringstream流的使用5.1 将数值类型数据格式化为字符串5.2 序列化和反序列化 一、引入 int main() {string str;while (cin >> str){c…

适合零基础小白,循序渐进学习--文件操作--相关函数

目录 一. 前言 二. 正文 2. 1什么是文件 (1)程序文件 (2)数据文件 2.2文件名 2.3文件类型 2.4 文件缓冲区 2.5 文件指针 2.7 文件操作函数 (1) fopen()--- 打开文件 (2) fclose()--- 关闭文件 2.7 文件的顺序读写&…

ArcGIS制图技巧

目录 1、经纬度网置于底层 2、设置经纬网刻度为英文 3、设置左右经纬度为垂直,不显示分秒,以及改变字体等 4、拖动制图中的图层 5、设置经纬度网为曲线 6、根据经纬度导入样本点 1、经纬度网置于底层 最初我们的网格是下图这个样子: 然…

智慧化工业企业能耗管理系统平台的构建

节能监测技术是节能减排、有效节能的重要支撑技术,当前能源资源日渐枯竭的紧张形势下,节能意识的增强以及各行业对节能技术的需求不断增加,使得节能技术的开发越来越受到人们的重视。工业企业能耗监测系统的构建是按照“统一规划、分期分批”…

头像展示样式

先上效果图 再上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>body {align-items: center;background-color: #f2f2f2;display: flex;font-fa…

代码随想录算法训练营第三十天| 332.重新安排行程、回溯总结

文章目录 332.重新安排行程:star:回溯总结:star:1.组合问题2.切割问题3.子集问题4.排列问题5.棋盘问题(未完待续)6.复杂度分析 332.重新安排行程⭐️ 链接:代码随想录 本题是一道困难题&#xff0c;其实困难点也就在容器的选择和使用上 结果集采用数组存取即可操作集要用一个m…

算法篇——栈与队列大集合(js版)

232.用栈实现队列 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作&#xff08;push、pop、peek、empty&#xff09;&#xff1a; 实现 MyQueue 类&#xff1a; void push(int x) 将元素 x 推到队列的末尾 int pop() 从队列的开头移除并返回元素 int…