笔记——三大串行总线SPI、IIC、UART

阅读: 评论:0

笔记——三⼤串⾏总线SPI、IIC、UART
⼀、名字
SPI(serial Peripheral Interface:串⾏外设接⼝),是motorola公司提出的⼀种同步串⾏数据传输标准;
I2C(INTER IC BUS:IC之间总线),是由PHILIPS公司开发的两线式串⾏总线,⽤于连接微控制器及其外围设备
UART(Universal Asynchronous Receiver Transmitter:通⽤异步收发器),是电脑硬件的⼀部分,它把将要传输的资料在串⾏通信与并⾏通信之间加以转换,UART通常被集成于其他通讯接⼝的连接上。UART即我们通常说的“串⼝”。
⼆、UART、SPI、I2C对⽐
三、串⾏外设接⼝:SPI
1、速览点
夹网布(1)四条信号线:串⾏时钟(SCLK)、串⾏数据输出(SDO)、串⾏数据输⼊(SDI)、⽚选线(SS)。(所谓的进出,是针对信号进出主机⽽⾔)。
(2)SPI总线可以实现多SPI设备互相连接。提供时钟的SPI设备为主设备(Master),其他设备为从设备(Slave)。SCLK信号线只由主设备控制,从设备不能控制信号线。
(3)在SPI总线上,某⼀时刻可以出现多个从机,但只能存在⼀个主机。主机通过⽚选线来确定要通信的从机。这就要求从机的MISO⼝具有三态特性,使得该⼝线在器件未被选通时表现为⾼阻抗。
(4)主从设备间可以实现全双⼯通信,收发独⽴,操作简单,数据传输速率较⾼,但需要占⽤主机较多的⼝线(每个从机都需要⼀根⽚选线),⽽且只⽀持单个主机,没有指定的流控制,没有应答机制确认是否接收到数据。
(5)数据输出通过SDO线,数据在时钟上沿或下沿时改变(即发送),在紧接着的下沿或上沿被读取,从⽽完成⼀位数据传输。数据输⼊也使⽤同样原理。因此,8位数据的传输,⾄少需要8次时钟信号的改变(上沿和下沿为⼀次)。高速车针
(6)普通的串⾏通讯⼀次连续传送⾄少8位数据,⽽SPI允许数据⼀位⼀位的传送,甚⾄允许暂停,因为SCK时钟线由主控设备控制,当没有时钟跳变时,从设备不采集或传送数据。也就是说,主设备通过对SCK时钟线的控制可以完成对通讯的控制。
(7)SPI接⼝在CPU和外围低速器件之间进⾏同步串⾏数据传输,在主器件的移位脉冲下,数据按位传输,⾼位在前(先传?),低位在后,为全双⼯通信。
2、数据传输
(1)SPI在数据传输的时候,需要确定两件事情:
其⼀,数据是在时钟的上升沿采集还是下降沿采集;
其⼆,时钟的初始(空闲)状态是为⾼电平还是低电平。
对⽐:I2C空闲状态时,时钟线(不是数据线?)为⾼电平,数据采集时,时钟线也为⾼电平,但SPI给出了更⾃由的⽅式
(2)两个概念
CPOL:时钟极性,表⽰SPI在空闲时,时钟信号是⾼电平还是低电平。
CPHA:时钟相位,表⽰SPI设备是在在时钟的上升沿采集还是下降沿采集。边坡滑模施工
如果CPOL=0,串⾏同步时钟的空闲状态为低电平;如果 CPOL=1,串⾏同步时钟的空闲状态为⾼电
平。时钟相位(CPHA)能够配置⽤于选择两种不同的传输协议之⼀进⾏数据传输。如果CPHA=0,在串⾏同步时钟的第⼀个跳变沿(上升或下降)数据被采样;如果 CPHA=1,在串⾏同步时钟的第⼆个跳变沿(上升或下降)数据被采样。SPI 主模块和与之通信的外设备时钟相位和极性应该⼀致。
则SPI数据传输就有四种可能—按照标准的说法,SPI数据传输就有四种模式。
3、spi读写
(1)SPI在硬件设计上采⽤的双数据线制,根据设计,在SPI通信过程中,主从设备之间会形成⼀个数据环形链路——即主设备向从设备写⼀次数据,从设备就会回⼀次数据(⾄于从设备回复的数据是否有效,则另当别论——如果有效,主设备就把它读⼊,否则丢弃)。
(2)例⼦:假设上升沿发送、下降沿接收、⾼位先发送。
假设主机8位寄存器装的是待发送的数据10101010
垃圾分类机
解析:
原数据为10101010
(1)上,
此时主机发送1Bit数据,即将最左边的1发送出去,故当前状态为0101010X,X表⽰未知,因为换没接收到从机发送来的数据;
此时从机发送1Bit数据,即将最左边的0发送出去,故当前状态为1010101X,X表⽰未知,因为换没接收到主机发送来的数据;
(2)上,
此时主机接收1Bit数据,故当前状态为01010100;
此时从机接收1Bit数据,故当前状态为10101011;不干胶标贴
⼀个时钟周期内完成数据的接收与发送;
主机与从机都是⾼位先发送,接收到的数据填充到最右边;
由此可知⼋个时钟周期完成了⼀次数据交换。
裂隙水四、IC之间总线:I2C
IIC(Inter-Integrated Circuit)总线是⼀种由 PHILIPS 公司开发的两线式串⾏总线,⽤于连接微控制器及其外围设备。它是由数据线 SDA 和时钟 SCL 构成的串⾏总线,可发送和接收数据。在 CPU 与被控 IC 之间、IC 与 IC 之间进⾏双向传送,⾼速 IIC 总线⼀般可达
400kbps 以上。
I2C 总线在传送数据过程中共有三种类型信号, 它们分别是:开始信号、结束信号和应答
信号。

本文发布于:2023-05-27 11:22:52,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/115925.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   时钟   设备   发送   接收
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图