串行外设接口SPI

串行外设接口

SPI(Serial Peripheral Interface)

串行外设接口(Serial Peripheral Interface)是一种高速的、全双工、同步的串行通信总线;它可以使单片机与各种外围设备以串行方式进行通信以交换信息。SPI 采用主从方式工作,一般有一个主设备和一个或多个从设备。

1.主要特点

数据的通信方式:同步通信

数据的传输方式:串行传输

数据的传输方向:全双工通信

一主一从式、互为主从式、一主多从式、多主多从式

2.引脚说明和物理层实现

CS:片选信号线

SCK:串行时钟信号线

MOSI:主设备输出/从设备输入信号线

MISO:主设备输入/从设备输出信号线

TTL电平:高电平表示逻辑“1”;低电平表示逻辑“0”;

SPI的操作过程:

将数据写到SPI发送缓冲区后,在时钟信号SCK作用下,一位一位按位传输;在主机中数据从移位寄存器中自左向右发出送到从机(MOSI),同时从机中的数据自右向左发送主机(MISO),经过8个时钟周期完成1个字节的发送。输入字节保留在移位寄存器中,然后从接收缓冲区中读出1字节的数据。

寻址方式:当主设备要和某个从设备进行通信时,主设备需要先向对应从设备的片选线上发送使能信号(高电平或者低电平,根据从机而定)表示选中该从设备。

3.协议规范

SPI 总线在进行数据传送时,先传送高位,后传送低位;

一个字节传送完成后无需应答即可开始下一个字节的传送;SPI总线采用同步方式工作,时钟线在上升沿或下降沿时发送器向数据线上发送数据,在紧接着的下降沿或上升沿时接收器从数据线上读取数据,完成一位数据传送,八个时钟周期即可完成一个字节数据的传送。

极性和相位

SPI 总线有四种不同的工作模式,取决于极性(CPOL)和相位(CPHL)这两个因素

CPOL 表示SCLK空闲时的状态

CPOL = 0,空闲时SCLK为低电平

CPOL = 1,空闲时SCLK为高电平

CPHA 表示采样时刻

CPHA = 0,每个周期的第一个时钟沿采样

CPHA = 1,每个周期的第二个时钟沿采样

IIC 和 SPI 的异同

不同点:

1.IIC 为半双工,SPI 为全双工

2.IIC 有应答机制,SPI 无应答机制

3.IIC 通过向总线广播从机地址来寻址,SPI 通过相对应从机发送使能信号来寻址

4.IIC 的时钟极性和时钟相位固定,SPI 的时钟极性和时钟相位可调

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值