马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
理论
1.SPI外设简介
STM32内部集成了硬件SPI收发电路,可以由硬件自动实行时钟天生、数据收发等功能,减轻CPU的负担
可设置8位/16位数据帧、高位先行/低位先行
时钟频率: fPCLK / (2, 4, 8, 16, 32, 64, 128, 256)
支持多主机模子、主或从操纵 可精简为半双工/单工通讯
支持DMA
兼容I2S协议
STM32F103C8T6 硬件SPI资源:SPI1、SPI2
2.SPI框图
全双工模式:必须只有在发送数据时,才会触发担当数据,由于在这种模式下只能是发送数据时才会触发时钟线(单纯担当不会触发时钟线),实现全双工模式,发送,吸取同时举行
同时可以通过标记位TXE与RXEN判定运行状态
3.SPI根本布局
没有NSS线,它可以通过软件举行控制
4.主模式传输
(1)主模式全双工连续传输
这个工作模式相识即可,实际上常用非连续传输
(2)非连续传输
(1)判定TXE标记位
判定是否没有数据,如果发送缓存器(发送数据寄存器TDR)没有数据,则置为SET(1)
(2)发送数据
调用SPI_I2S_SendData发送数据
(3)检测RXNE标记位
由于在TXE重新变回SET(1)后,硬件还在发送数据,无法判定是否发送完一个字节,则须要RXNE举行判定,在移位寄存器移完时,会发送字节到担当缓存区RXNE置SET(1)来举行判定
5. GPIO输出与复用输出
在STM32微控制器中,为了使GPIO口可以大概由硬件外设(如定时器、USART、SPI、I2C等)控制,GPIO口通常须要设置为复用推挽输出模式。以下是如许做的缘故因由:
1. 硬件外设控制的需求
硬件外设(如定时器或串口)通常须要将GPIO引脚用于特定的功能,好比天生PWM信号、传输数据或产生时钟信号。为了实现这些功能,GPIO引脚必须支持复勤劳能和特定的输出模式。这是由于:
- 复勤劳能:STM32的GPIO引脚通常具有复勤劳能,答应它们被设置为多种差异的外设功能。要让一个引脚工作在某个硬件外设的模式下,必须将其设置为该外设所需的特定复勤劳能模式。推挽输出模式是很多外设的要求,由于它能提供稳固的电平和较强的驱动本领。
- 推挽输出模式
|