SPI、UART、IIC总线的区别与联系.docx

上传人:牧羊曲112 文档编号:4924995 上传时间:2023-05-23 格式:DOCX 页数:6 大小:157.80KB
返回 下载 相关 举报
SPI、UART、IIC总线的区别与联系.docx_第1页
第1页 / 共6页
SPI、UART、IIC总线的区别与联系.docx_第2页
第2页 / 共6页
SPI、UART、IIC总线的区别与联系.docx_第3页
第3页 / 共6页
SPI、UART、IIC总线的区别与联系.docx_第4页
第4页 / 共6页
SPI、UART、IIC总线的区别与联系.docx_第5页
第5页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《SPI、UART、IIC总线的区别与联系.docx》由会员分享,可在线阅读,更多相关《SPI、UART、IIC总线的区别与联系.docx(6页珍藏版)》请在三一办公上搜索。

1、SPI、UART、IIC总线的区别与联系SPI总线SPI (Serial Peripheral Interface,串行外设接口)是一种高 速、全双工、同步、串行通信总线,34线接口,以主从模式工作, 收发独立,可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其 他设备为SPI从机或从设备(Slave)。SPI总线由三条信号线组成,分别是SCLK(串行时钟)、SDI(串 行数据输入)、SDO (串行数据输出)。当有多个从设备时,还可以增 加一条从设备选择线,CS是控制芯片是否被选中的,这样就可以实 现在同一总线上多个SPI设备互相连接。如果用

2、GPIO 口模拟SPI总线,必须要有一个输出口 (SDO),一个 输入口(SDI),另一个口则视实现的设备类型而定,如果要实现主从 设备,则需输入输出口,若只实现主设备,则需输出口即可,若只实 现从设备,则只需输入口即可。SDI -主设备数据输入,从设备数据输出;SDO -主设备数据输出,从设备数据输入;SCLK -时钟信号,由主设备产生;CS -从设备使能信号,由主设备控制。SPI是一种允许一个主设备启动一个与从设备同步通讯的协议, 从而完成数据的交换。SPI是串行协议,也就是说数据是一位一位传 输的,这就是SCLK时钟线存在的原因,由SCLK提供时钟脉冲,SDI、SDO则基于此脉冲完成数据

3、传输。数据输出通过SDO线,数据在时钟上升沿或下降沿时改变,在 紧接着的下降沿或上升沿被读取。完成一位数据传输,输入也使用同 样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可 以完成8位数据的传输。这样的传输方式有一个优点,与普通的串行通讯不同,普通的串 行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送, 甚至允许暂停,因为SCLK时钟线由主控设备控制,当没有时钟跳变 时,从设备不采集或传送数据。也就是说,主设备通过对SCLK时钟 线的控制可以完成对通讯的控制。SPI还是一个数据交换协议:因为SPI的数据输入和输出线独立, 所以允许同时完成数据的输入和输出。不同S

4、PI设备的实现方式不尽 相同,主要是数据改变和采集的时间不同,在时钟信号上沿或下沿采 集有不同定义,具体请参考相关器件的文档。最后,SPI接口的一个缺点:没有指定的流控制,没有应答机制 确认是否接收到数据。在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工 通信,显得简单高效。在多个从设备的系统中,每个从设备需要独立 的使能信号,硬件上比12C系统要稍微复杂一些。$?【接口主要应用 在EEPROM、FLASH、实时时钟、AD转换器,还有数字信号处理器和数 字信号解码器之间。UART总线UART (Universal Asynchronous Receiver Transmitter,通

5、用 异步收发器)总线是两线、全双工、异步串口,速度慢。比SPI、I2C 这两种同步串口的结构要复杂很多,一般由波特率产生器(产生的波 特率等于传输波特率的16倍)、UART接收器、UART发送器组成,硬 件上有两根线,一根用于发送,一根用于接收。数据是异步传输的,对双方的时序要求比较严格,通信速度也不 是很快,在多机通信上面用的最多。如果用GPIO 口模拟UART总线, 则需一个输入口,一个输出口。UART是用于控制计算机与串行设备的芯片,它提供了 RS-232C 数据终端设备接口,这样计算机就可以和调制解调器或其它使用 RS-232C接口的串行设备通信了。大多数计算机包含两个基于RS232的

6、串口。串口同时也是仪器仪 表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232 口。同 时,串口通信协议也可以用于获取远程采集设备的数据。串口通信的概念非常简单,串口按位(bit)发送和接收字节。 尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发 送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。作为接口的一部分,UART还提供以下功能:将由计算机内部传送过来的并行数据转换为输出的串行数据流;将计算机外部来的串行数据转换为字节,供计算机内部使用并行 数据的器件使用;在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据 流进行奇偶校验;在输出数据流中加

7、入启停标记,并从接收数据流中删除启停标记;处理由键盘或鼠标发出的中断信号;可以处理计算机与外部串行设备的同步管理问题;有一些比较高档的UART还提供输入输出数据的缓冲区,现在比 较新的UART是16550,它可以在计算机需要处理数据前在其缓冲区 内存储16字节数据。IlCClnter Integrated Circuit)总线是双向、两线(SCL、SDA)、 同步、串行、多主控(multi-master)接口标准,具有竞争检测和总 线仲裁机制,非常适合在器件之间进行近距离、非经常性的数据通信。在IIC的协议体系中,传输数据时都会带上目的设备的设备地址, 因此可以实现设备组网。如果用GPIO 口

8、模拟IIC总线,并实现双向传输,则需一个输入 输出口(SDA),另外还需一个输出口(SCL)。IIC总线最主要的优点是其简单性和有效性。I2C能用于替代标 准的并行总线,能连接各种集成电路和功能模块。只要求两条总线线 路:一条串行数据线SDA 一条串行时钟线SCL。IIC是多主控总线,总线上每一个设备都有一个独一无二的地址, 根据设备自己的能力,任何能够进行发送和接收的设备都能像主控器 一样工作,并控制总线。当然,在任何时间点上只能有一个主控,如 果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁,防 止数据被破坏。一个主控能够控制信号的传输和时钟频率。同步时钟允许器件通 过总线以不同的波特率进行通信。同步时钟可以作为停止和重新启动 串行口发送的握手方式。由于接口直接在组件之上,因此I2C总线占用的空间非常小,减 少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度 可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。串行的8位双向数据传输位速率标准模式下可达100kbit/s快速模式下可达400kbit/s高速模式下可达3.4Mbit/s片上的滤波器可以滤去总线数据线上的毛刺波保证数据完整。IIC使用上拉电阻,抗干扰能力较弱,一般用于同一板卡上芯片之间 的通信,较少用于远距离通信。连接到相同总线的IC数量只受到总 线的最大电容400pF限制。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号