spi,iic,uart,pcie区别

news2024/11/15 18:48:50

一、spi

SPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口,是同步传输协议,特征是:设备有主机(master)和从机(slave)的区分,主机在通讯时发送时钟信号。

SPI 的信号: CS: 从机片选信号,表示主机将于该选定的从机通讯。低电平有效。在多从机的系统中,主机控制多条 CS 信号线,每条连接到一个从机。

SCK: 串行时钟线,从主机连接到每一个从机。 MOSI: 主出从入数据线。SPI 的数据线上,数据是单向的。因此需两条信号线。

MISO: 主入从出数据线。 在 SPI 系统中,只允许有一个主机。如果主机在工作时发现任何 CS 线被其他设备拉低,将报告一个系统错误,并退出运行。

 二、I2C

一种双向的同步串行总线,是半双工,而不是全双工 ,同一时间只可以单向通信。IIC协议首先是发送从机硬件地址,然后发送命令,再发送数据/寄存器编号或者读取数据。IIC协议可以多字节连续读写数据。

I2C 的特点和信号: I2C 也可以是多从系统,它是通过地址信息来选择从机的。因此,它去了片选信号线。 I2C 允许在同一系统中有多个主机,他通过一套仲裁协议来解决主机的冲突。在一个系统中,允许设备在主机和从机间转换角色。

SCL: 时钟信号线。

SDA: 数据信号线。 I2C 通过复杂的协议减少了连接线,并允许多主多从。但它的代价是低的传输速度。

I2C 定义的传输模式:

* 标准模式:最高 100kbit/s,双向;

* 快速模式:最高 400kbit/s,双向,兼容标准模式;

* 快速模式Plus:最高 1Mbit/s,双向,兼容前两种模式;

* 超级快速模式:最高 5Mbit/s,单向(主机只发送),不兼容,不支持多主。 在实际使用中,主要是标准模式和快速模式。

三、UART与 USART

UART 是一种异步串行通讯协议,它通过收发双方精准的本地时钟来定时采样或切换信号电平。 UART 的收发双方是一对一的,且无主从之分。任何一方都可以在任何时刻发送数据。 UART 的双方必须采用事先约定的相同“波特率”(定时标准)来通讯。目前也有一些接收方通过对固定信号的检测来确定波特率的技术,但应用不广泛。

UART 的信号:

RXD: 接收信号线 TXD:

发送信号线 通讯的双方是将此二线交叉对接的。

USART 是对 UART 的扩展。它除了支持异步传输之外,也支持同步传输。但目前较少应用。

 四、PCIe

PCIe(Peripheral Component Interconnect Express)是继ISA和PCI总线之后的第三代I/O总线,是一种高速串行计算机扩展总线标准。 与PCI总线不同,PCIe总线使用端到端的连接方式,在一条PCIe链路的两端只能各连接一个设备,这两个设备互为是数据发送端和数据接收端。PCIe总线除了总线链路外,还具有多个层次,发送端发送数据时将通过这些层次,而接收端接收数据时也使用这些层次。PCIe总线使用的层次结构与网络协议栈较为类似。

参考:

SPI原理超详细讲解---值得一看_Z小旋的博客-CSDN博客

pCIe 是什么 ? -- 基本知识_qqliyunpeng的博客-CSDN博

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

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

相关文章

分治与减治算法实验: 排序中减治法的程序设计

目录 前言 实验内容 实验目的 实验分析 实验过程 流程演示 写出伪代码 实验代码 代码详解 运行结果 总结 前言 本文介绍了算法实验排序中减治法的程序设计。减治法是一种常用的算法设计技术,它通过减少问题的规模来求解问题。减治法可以应用于排序问题&…

mysql数据库自动备份

前言 服务器中数据库的数据是最重要的东西,如果因为某些情况导致数据库数据错误,数据错乱或数据库崩溃,这时一定要及时的修复,但如果数据丢失或数据没法用了,这时就要回滚数据了,而这时就需要我们经常的备份数据库的数据 正文 一般别人都会推荐使用Navicat来备份和连接数据库…

Kafka时间轮(TimerWheel)--算法简介

一、简介 一个简单的时间轮是一个定时器任务桶的循环列表。 让u作为时间单位。尺寸为n的时间轮有n个桶,可以在n*u的时间间隔内保存定时器任务。每个bucket保存属于相应时间范围的计时器任务。 在开始时, 第一个桶保存[0,u)的任务…

第7章 “字典”

1.字典简介 字典是什么? 解答:与集合类似,也是一种存储唯一值的数据结构,但它是以键值对的形式来存储。(键值对是最重要的特性)在Es6中新增了字典,名为Map字典的常用操作:增删改查 const map new Map()/…

使用PY003基于外部中断+定时器的方式实现NEC红外解码

写在前边 最近项目用到一款遥控器是38K红外载波,NEC协议的,找了很多帖子有看到用外部中断下降沿判断(但可惜判定数据的方式是while在外部中断里面死等的),有看到用100us定时器定时刷来判断,感觉都不太适合用在我这个工…

基于MATLAB实现WSN(无线传感器网络)的LEACH(低能耗自适应集群层次结构)(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 💥1 概述 低能耗自适应集群层次结构(“LEACH”)是一种基于 TDMA 的 MAC 协议,它与无线传感器网络 &a…

[2018.09.25][Sourceinsight]4.0配置

1 字体放大 (1)panel fonts: option,preference,colors&font (2)code fonts: option,file type options 2 修改默认字体 Alt y 3 显示行号 点击菜单栏View->Line Numbers 4 破解 https://blog.csdn.net/biubiuibiu/article/details/78044232 5 全局搜索字…

在Spring Boot微服务使用knife4j发布后端API接口

记录:422 场景:在Spring Boot微服务上,应用knife4j发布后端API接口,辅助开发与调试。 版本:JDK 1.8,Spring Boot 2.6.3,knife4j-3.0.3,springfox-swagger2-3.0.0。 Knife4j: 是一个集Swagger2 和 OpenAPI3为一体的增…

第三十二篇,记一次Windows下Qt使用boost的经历

Win10系统 Qt版本如下所示 Qt中使用的编译器是MinGW,如下图 boost版本是1.82.0 好的,描述一下过程: 按这个教程下载、编译boost,在boost的目录下生成了stage/lib/目录,然后加入到Qt工程里,主要是include目…

win10安装Anaconda,配置Pytorch环境

一、安装Anaconda Anaconda实际上是一个包管理器,可以理解为一个工具。Anaconda自带Python(选中版本)解释器以及其他一些数据分析与挖掘需要的模块而无需用户手动添加这些常用模块(安装模块会出现各种错误)。早期学Pyt…

Django个性化推荐系统,以电影为例

背景 随着科学技术发展,电脑已成为人们生活中必不可少的生活办公工具,在这样的背景下,网络技术被应用到各个方面,为了提高办公生活效率,网络信息技术飞速发展。在这样的背景下人类社会进入了全新的信息化的时代。电影…

flask+opencv:实时视频直播推流平台Demo

简介:推流,指的是把采集阶段封包好的内容传输到服务器的过程。其实就是将现场的视频信号传到网络的过程。网上调查、对话访谈、在线培训等内容现场发布到互联网上。利用互联网的直观、快速,表现形式好、内容丰富、交互性强、地域不受限制、受…

华为OD机试真题(Java),猴子爬山(100%通过+复盘思路)

一、题目描述 一天一只顽猴想去从山脚爬到山顶,途中经过一个有个N个台阶的阶梯,但是这猴子有一个习惯: 每一次只能跳1步或跳3步,试问猴子通过这个阶梯有多少种不同的跳跃方式? 二、输入描述 输入只有一个整数N&…

AI语音生成器是下一大安全威胁吗?

ChatGPT一经上市,有关监管人工智能的讨论就开始升温。任何试图遏制这种技术的做法都可能需要国际合作,需要我们在过去几十年来从未见过的合作程度,因此不太可能遏制人工智能。 人工智能是一项功能强大的技术,有望彻底改变我们生活…

AIGC - 生产力新工具 Bito AI

文章目录 Bito AI 是什么Bito AI 能干啥官网免费的吗?如何使用 Bito方式一:方式二:在这里插入图片描述方式三 Bito AI 是什么 Bito AI是继Github Copilot、Cursor、CodeWhisperer等AI智能编程产品之后发了一大AI编程工具 。 Bito是一款建立…

表情迁移 - 2D人像动起来(附带生成web服务提供api接口)

左边原图,右边是渲染后的视频文件 开源地址:https://github.com/AliaksandrSiarohin/first-order-model 官方模型下载地址(需科学上网): google-driveyandex-disk本文docker容器已自带人脸模型 若还需要行为、物品、动画等追踪模型需下载后拷贝至容器内即可使用 API请求…

Android之 Camera相机使用

一 简介 1.1 随着信息时代的发展,相机在我们生活中使用越来越频繁,也成为手机的基本配置之一。相机可以用来拍照,拍视频,人脸识别,视频聊天,扫码支付,监控等常见领域 不管什么场景&#xff0c…

DolphinScheduler 2.0.5详解

文章目录 第一章 DolphinScheduler介绍1.1 关于DolphinScheduler1.2 DolphinScheduler特性1.3 配置建议1.3.1 Linux 操作系统版本要求1.3.2 服务器建议配置1.3.3 生产环境1.3.4 网络要求1.3.5 客户端 Web 浏览器要求 第二章 DolphinScheduler安装部署2.1 安装部署介绍2.2 单机版…

Mybatis笔记分享【狂神说java】

MyBatis 1、简介 1.1什么是MyBatis MyBatis 是一款优秀的持久层框架 它支持自定义 SQL、存储过程以及高级映射 MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作 MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(…

Windows环境下使用Internet Information Service( IIS)管理器上搭建Web资源网站

一、业务需求 在项目的开发过程中,需要将指定文件夹发布称为一个网站,可以通过网页查看该文件夹下的内容和子目录(及其子目录内容);同时也可以将内容上传到该文件夹中,方便他人使用,如下图所示: 二、思路分析 将文件夹发布为网站,可以使用Windows的IIS管理器搭建一个W…