SPI、IIC、UART区别

第一个区别当然是名字:
     SPI(Serial Peripheral Interface:串行外设接口);
     I2C(INTER IC BUS)
     UART(Universal Asynchronous Receiver Transmitter:通用异步收发器)

第二,区别在电气信号线上:
     SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现 多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Slave)。主从设备 间可以实现全双工通信,当有多个从设备时,还可以增加一条从设备选择线。
     如果用通用IO口模拟SPI总线,必须要有一个输出口(SDO),一个输入口(SDI),另一个口则视实现的设备类型而定,如果要实现主从设备,则需输入输出口,若只实现主设备,则需输出口即可,若只实现从设备,则只需输入口即可。

I2C总线是双向、两线(SCL、SDA)、串行、多主控(multi-master)接口标准,具有总线仲裁机制,非常适合在器件之间进行近距离、非经常性的数据通信。在它的协议体系中,传输数据时都会带上目的设备的设备地址,因此可以实现设备组网。
     如果用通用IO口模拟I2C总线,并实现双向传输,则需一个输入输出口(SDA),另外还需一个输出口(SCL)。(注:I2C资料了解得比较少,这里的描述可能很不完备)

UART总线是异步串口,因此一般比前两种同步串口的结构要复杂很多,一般由波特率产生器(产生的波特率等于传输波特率的16倍)、UART接收器、UART发送器组成,硬件上由两根线,一根用于发送,一根用于接收。
     显然,如果用通用IO口模拟UART总线,则需一个输入口,一个输出口

第三,从第二点明显可以看出,SPI和UART可以实现全双工,但I2C不行;

第四,看看牛人们的意见吧!
     wudanyu:I2C线更少,我觉得比UART、SPI更为强大,但是技术上也更加麻烦些,因为I2C需要有双向IO的支持,而且使用上拉电阻,我觉得 抗干扰能力较弱,一般用于同一板卡上芯片之间的通信,较少用于远距离通信。SPI实现要简单一些,UART需要固定的波特率,就是说两位数据的间隔要相 等,而SPI则无所谓,因为它是有时钟的协议。
     quickmouse:I2C的速度比SPI慢一点,协议比SPI复杂一点,但是连线也比标准的SPI要少。

时间: 2024-11-06 09:40:30

SPI、IIC、UART区别的相关文章

IIC、SPI和UART区别

第一个区别当然是名字:     SPI(Serial Peripheral Interface:串行外设接口);     I2C(INTER IC BUS)     UART(Universal Asynchronous Receiver Transmitter:通用异步收发器) 第二,区别在电气信号线上:     SPI总线由三条信号线组成:串行时钟(SCLK).串行数据输出(SDO).串行数据输入(SDI).SPI总线可以实现多个SPI设备互相连接.提供SPI串行时钟的SPI设备为SPI主机

I2S,PCM,IOM-2,I2C,SPI,UART,GPIO

概述 I2S,PCM,IOM-2都是数字音频接口,传数据的. I2C,SPI,UART,GPIO是控制接口,传控制信令的. I2S I2S(Inter-IC Sound Bus)是飞利浦公司为数字音频设备之间的音频 数据传输而制定的一种总线标准. I2S至少3根线: 1. 比特时钟线 首先解释一下比特时钟线.比特时钟线上对每个bit有一个脉冲,比特时钟频率是 采样率*每个channel的bit数*channel数,比如,在播放44.1Khz CD的时候,比特时钟频率就是:44.1KHz*16*2

串行通信协议I2C、SPI、UART

终端和其他终端或者外设通信的方式:串行通信和并行通信 串行通信是指 使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度. 其只需要少数几条线就可以在系统间交换信息,特别使用于计算机与计算机.计算机与外设之间的远距离通信. 并行通信时数据的各个位同时传送,可以字或字节为单位并行进行. 并行通信速度快,但用的通信线多.成本高,故不宜进行远距离通信.计算机或PLC各种内部总线就是以并行方式传送数据的. 常用的串行通信协议: SPI(Serial Peripheral Inter

TX2上安装spi和uart驱动

替换/boot目录下的Image文件 重新烧写dtb文件.烧写方式参考. 文件下载 原文地址:https://www.cnblogs.com/xiaojianliu/p/9765512.html

IIC SPI UART通信方式的区别

1.定义上的区别 IIC :Inter-Integrated Circuit   两线式串行总线 SPI : serial peripheral interface   串行外围设备接口 UART : Universal Asynchronous Receiver/Transmitter 通用异步收发传输器 通信速率 SPI > IIC > UART SPI : 串行时钟(SCLK).主机输入从机输出(MISO).主机输出从机输入(MOSI)两条合一的数据线,1个CS(设备片选线) 串行,同步

Uart,IIC和SPI的区别

1.UART, SPI, IIC的详解 UART.SPI.IIC是经常用到的几个数据传输标准,下面分别总结一下: UART(Universal Asynchronous Receive Transmitter):也就是我们经常所说的串口,基本都用于调试. 主机和从机至少要接三根线,RX.TX和GND.TX用于发送数据,RX用于接受数据(收发不是一根线,所以是全双工方式).注意A和B通信A.TX要接B.RX,A.RX要接B.TX(A用TX发B当然要用RX来收了!) 如果A是PC机,B是单片机,A和

UART、SPI、IIC

UART, SPI, IIC的详解及三者的区别和联系 UART.SPI.IIC是经常用到的几个数据传输标准,下面分别总结一下: UART(Universal Asynchronous Receive Transmitter):也就是我们经常所说的串口,基本都用于调试. 主机和从机至少要接三根线,RX.TX和GND.TX用于发送数据,RX用于接受数据(收发不是一根线,所以是全双工方式).注意A和B通信A.TX要接B.RX,A.RX要接B.TX(A用TX发B当然要用RX来收了!) 如果A是PC机,B

SJXXX串口扩展芯片 4串口芯片 UART串口芯片

SJXX串口扩展芯片1 概述SJ000是一款具备I2C总线/SPI总线/UART接口的四通道异步收发器件,通过模式选择使得该器件工作于以上任何一种主接口模式下.器件的四个通道UART可提供高达2Mbps的数据率,低功耗模式和睡眠电流.每个通道含有一个接收器和一个发送器,并带有64字节发送/接收FIFO,通道波特率.字长.校验格式可独立设置,也可以独立设置IrDA红外通信.RS-485自动收发控制.9位网络地址自动识别.软件/硬件自动流量控制.广播接收等.器件还带有可编程中断功能,实现与主机的信息

SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转)

SPI.I2C.UART三种串行总线协议的区别 第一个区别当然是名字: SPI(Serial Peripheral Interface:串行外设接口); I2C(INTER IC BUS) UART(Universal Asynchronous Receiver Transmitter:通用异步收发器) 第二,区别在电气信号线上: SPI总线由三条信号线组成:串行时钟(SCLK).串行数据输出(SDO).串行数据输入(SDI).SPI总线可以实现多个SPI设备互相连接.提供SPI串行时钟的SPI