SysTick计数器
VoidSysTick_Co
figuratio
void
SysTick_Cou
terCmdSysTick_Cou
ter_DisableSysTick_ITCo
figDISABLESysTick_CLKSourceCo
figSysTick_CLKSource_HCLK_Div8SysTick_SetReload90001000SysTick_ITCo
figENABLESysTick_Cou
terCmdSysTick_Cou
ter_E
able
fSPI通信同步全双工
SCK同步时钟MISO主机输入,从机输出MOSI从机输入,主机输出SS从机选择信号,低电平有效SPI通信:
SPI的基本通信结构相当于两个8位移位寄存器的首尾相连,构成16位的环形移位寄存器,从而实现主机与从机的数据变换
配置步骤1通过SPI_CR1寄存器的BR20位定义串行时钟波特率2选择CPOL和CPHA位,定义数据传输和串行时钟间的相位关系3设置DFF位来定义8和16位数据帧格式4配置SPI_CR1寄存器的LSBFIRST位定义帧格式5如果NSS引脚需要工作在输入模式,硬件模式中在整个数据帧传输期间应把NSS引脚连接到高电平;在软件模式中,需设置SPI_CR1寄存器的SSM和SSI位。如果NSS引脚工作在输出模式,则只需设置SSOE位6必须设置MSTR和SPE位(只当NSS脚被连接高电平,这些位才能保持置位)
数据发送过程1、当一字节写进发送缓冲器时,发送过程开始2、在发送第一个数据位时,数据字被并行的(通过内部总线)传入移位寄存器,而后串行的移除到MOSI脚上;MSB在先还是LSB在先,取决于SPI_CR1寄存器的LSBFIRST位。数据从发送缓冲器传输到移位寄存器是TXE标志将被置位,如果设置SPI_CR1寄存器中的TXEIE位,将产生中断3、在试图写发送缓冲器之前,需确定TXE标志位应该是1
数据接收过程,当数据传输完成时1、移位寄存器里的数据传送到接收缓冲器,并且RXNE标志被置位
如果SPI_CR2寄存器中的RXEIE位被设置,则产生中断2、读SPI_DR寄存器时,SPI设备返回接收到的数据字。读SPI_DR寄存器将清除RXNE位
SPI库函数的配置
voidSPI1_Co
figuratio
void
SPI_I
itTypeDefSPI_I
itStructureSPI_I
itStructureSPI_Directio
SPI_Directio
_2Li
es_FullDuplexSPI设置为双线
双向全双工
SPI_I
itStructureSPI_ModeSPI_Mode_Master
设置为主SPI
SPI_I
itStructureSPI_DataSizeSPI_DataSize_8b
CPOL1
SPI_I
itStructureSPI_CPOLSPI_CPOL_High
CPOL1
SPI_I
itStructureSPI_CPHASPI_CPHA_1EdgeSPI_I
itStructureSPI_NSSSPI_NSS_Hard
CPHA0NSS由外部管脚
fSPI_I
itStructureSPI_BaudRatePrescalerSPI_BaudRatePrescaler_64分频值为64
SPI_I
itStructureSPI_FirstBitSPI_FirstBit_LSB
数据传输LSB(低位)开始
SPI_I
itStructureSPI_CRCPoly
omial7
SPI_I2S_DeI
itSPI1
将外设SPI1寄存器重设为缺省值
SPI_I
itSPI1SPI_I
itStructure初始化外设SPI1寄存器
SPI_CmdSPI1ENABLE使能r