STM32参考介绍材料中文版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
23 串行外设接口(SPI)
小容量产品是指闪存存储器容量在16K 至32K 字节之间的STM32F101xx、STM32F102xx和
STM32F103xx微控制器。
中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx 和
STM32F103xx微控制器。
大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控制器。
互联型产品是指STM32F105xx和STM32F107xx微控制器。除非特别说明,本章描述的模块适
用于整个STM32F10xxx微控制器系列。
23.1 SPI简介
在大容量产品和互联型产品上,SPI接口可以配置为支持SPI协议或者支持I2S音频协议。SPI
接口默认工作在SPI方式,可以通过软件把功能从SPI模式切换到I2S模式。
在小容量和中容量产品上,不支持I2S音频协议。
串行外设接口(SPI)允许芯片与外部设备以半/全双工、同步、串行方式通信。此接口可以被配置
成主模式,并为外部从设备提供通信时钟(SCK)。接口还能以多主配置方式工作。
它可用于多种用途,包括使用一条双向数据线的双线单工同步传输,还可使用CRC校验的可靠
通信。
I2S也是一种3引脚的同步串行接口通讯协议。它支持四种音频标准,包括飞利浦I2S标准,
MSB 和LSB对齐标准,以及PCM标准。它在半双工通讯中,可以工作在主和从2种模式下。
当它作为主设备时,通过接口向外部的从设备提供时钟信号。
警告:由于SPI3/I2S3 的部分引脚与JTAG 引脚共享(SPI3_NSS/I2S3_WS 与JTDI ,SPI3_SCK/I2S3_CK与JTDO),因此这些引脚不受IO控制器控制,他们(在每次复位
后) 被默认保留为JTAG用途。如果用户想把引脚配置给SPI3/I2S3,必须(在调试时)
关闭JTAG并切换至SWD接口,或者(在标准应用时)同时关闭JTAG和SWD接口。
详见第8.3.5节:JTAG/SWD复用功能重映射。
23.2 SPI和I2S主要特征
23.2.1 SPI特征
●3线全双工同步传输
●带或不带第三根双向数据线的双线单工同步传输
●8或16位传输帧格式选择
●主或从操作
●支持多主模式
●8个主模式波特率预分频系数(最大为f PCLK/2)
● 从模式频率(最大为f PCLK/2)
●主模式和从模式的快速通信
●主模式和从模式下均可以由软件或硬件进行NSS管理:主/从操作模式的动态改变
●可编程的时钟极性和相位
●可编程的数据顺序,MSB在前或LSB在前
●可触发中断的专用发送和接收标志
●SPI总线忙状态标志
●支持可靠通信的硬件CRC
─在发送模式下,CRC值可以被作为最后一个字节发送
─在全双工模式中对接收到的最后一个字节自动进行CRC校验
●可触发中断的主模式故障、过载以及CRC错误标志
●支持DMA功能的1字节发送和接收缓冲器:产生发送和接受请求
23.2.2 I2S功能
●单工通信(仅发送或接收)
●主或者从操作
●8位线性可编程预分频器,获得精确的音频采样频率(8KHz到96kHz)
●数据格式可以是16位,24位或者32位
●音频信道固定数据包帧为16位(16位数据帧)或32位(16、24或32位数据帧)
●可编程的时钟极性(稳定态)
●从发送模式下的下溢标志位和主/从接收模式下的溢出标志位
●16位数据寄存器用来发送和接收,在通道两端各有一个寄存器
●支持的I2S协议:
─I2S飞利浦标准
─MSB对齐标准(左对齐)
─LSB对齐标准(右对齐)
─PCM标准(16位通道帧上带长或短帧同步或者16位数据帧扩展为32位通道帧)
●数据方向总是MSB在先
●发送和接收都具有DMA能力
●主时钟可以输出到外部音频设备,比率固定为256xFs(Fs为音频采样频率)
●在互联型产品中,两个I2S模块(I2S2和I2S3)有一个专用的PLL(PLL3),产生更加精准得时
钟
23.3 SPI功能描述
23.3.1 概述
SPI的方框图见下图。
图209 SPI框图
通常SPI通过4个引脚与外部器件相连:
●MISO:主设备输入/从设备输出引脚。该引脚在从模式下发送数据,在主模式下接收数据。
●MOSI:主设备输出/从设备输入引脚。该引脚在主模式下发送数据,在从模式下接收数据。
●SCK:串口时钟,作为主设备的输出,从设备的输入
●NSS:从设备选择。这是一个可选的引脚,用来选择主/从设备。它的功能是用来作为“片
选引脚”,让主设备可以单独地与特定从设备通讯,避免数据线上的冲突。从设备的NSS 引
脚可以由主设备的一个标准I/O引脚来驱动。一旦被使能(SSOE位),NSS引脚也可以作为
输出引脚,并在SPI处于主模式时拉低;此时,所有的SPI设备,如果它们的NSS引脚连
接到主设备的NSS引脚,则会检测到低电平,如果它们被设置为NSS硬件模式,就会自动
进入从设备状态。当配置为主设备、NSS配置为输入引脚(MSTR=1,SSOE=0)时,如果
NSS 被拉低,则这个SPI设备进入主模式失败状态:即MSTR位被自动清除,此设备进入
从模式(参见)
下图是一个单主和单从设备互连的例子。