spi_master_slave

spi_master_slave

一 注意事项

通常 SPI 通过 4 个引脚与外部设备相连。
● MISO: 主设备输入 / 从设备输出引脚。 一般情况下,此引脚用于在从模式下的数据发送
和主模式下的数据接收。

● MOSI: 主设备输出 / 从设备输入引脚。 一般情况下,此引脚用于在从模式下的数据接收
和主模式下的数据发送。

● SCK: SPI 串行时钟输出引脚,作为主设备输入,从设备的输出。
● NSS: 从机片选脚。 根据 SPI 和 NSS 设置,此引脚可用于:
- 选择一个从机来通信
- 同步数据帧或者
- 检测多个主机之间的冲突
SPI 总线允许一个主设备和一个或多个从设备之间的通信。 总线由至少有两条线 - 时钟信号
和同步数据传输。 其他信号基于 SPI 节点和主机间的数据交换目的来添加。

在这里插入图片描述

全双工模式

  • 默认情况下,SPI 被配置为全双工通信。 在此配置中,主机和从机的移位寄存器通过两个单
    向线,MOSI 和 MISO 引脚进行连接。 在 SPI 通信时,按照主机提供的 SCK 时钟沿进行同步
    数据传输。 主机的数据经由 MOSI 发送到从机,从机的数据经由 MISO 线发送到主机。 当数
    据帧传输完成(所有位转移)时,主机和从机间的信息交换就完成了。
    在这里插入图片描述

半双工模式

  • 通过设置在 SPIx_CR1 寄存器 BIDIMODE 位,可以令的 SPI 工作在 half-duplex 模式下。在此
    配置中性由一个单一的跨接线连接处主机寄存器和从机。在通信期间,数据按照 SPIx_CR1
    寄存器的 BDIOE 位的设定,由主机移位寄存器同步于 SCK 时钟沿传输到从机。 在此配置中,
    主机的 MISO 引脚和从机的 MOSI 引脚都是自由的,可作为 GPIO 供其他应用程序使用
    在这里插入图片描述

简单通信

  • 可以通过 SPIx_CR2 寄存器 RXONLY 位选择 SPI 工作在单工模式下,实现单发送或单接收通
    讯。 在此配置中,由一个单一的跨接线连接主机寄存器和从机。 其余 MISO 和 MOSI 引脚不
    用于通信,并可以作为标准的 GPIO 使用。
  • 单发送模式(RXONLY = 0): 配置设置和全双工相同。 应用程序必须忽略在未使用的输
    入引脚上捕获的信息。 这个脚可以作为一个标准的 GPIO 引脚。
  • 单接收模式(RXONLY = 1): 应用程序可以设置 RXONLY 位以禁用 SPI 输出功能。
    在配置为从机时,MISO 输出被禁用,并且可以当作一个 GPIO 引脚来使用。 从机将从
    MOSI 引脚连续接收数据,在从机选择信号处于激活状态时,它的 BSY 标志总是为 1从机选择(NSS)的引脚管理)。根据数据缓冲区的配置,会出现数据接收事件。
    在配置为主机时,MOSI 输出被禁用,并且可以当作一个 GPIO 引脚来使用。 SPI 使能时,
    时钟信号会不断产生。 要停止时钟输出,只有清除 RXONLY 位或 SPE 位,并等待直到
    从 MISO 引脚的输入样式的完成并填充数据缓冲区结构,这取决于其具体配置。
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值