本章教程主要在SPI双线全双工模式下进行主从收发实验,并采用软件控制NSS方式。 1、SPI简介及相关函数介绍 关于SPI主从模式下的全双工发送和接收数据,其软件配置过程如下: 1、设置SPI控制寄存器1(SPIx_CTLR1)位6 SPE位置1,启用SPI; 2、在SPI数据寄存器(SPIx_DATAR)中写入第一个要发送的数据,此操作会清除SPI状态寄存器(SPI_SR)位1 TXE标志; 3、当SPI状态寄存器(SPI_SR)位1 TXE标志为1(表示发送缓冲区为空),写入第二个要发送的数据;当SPI状态寄存器(SPI_SR)位0 RXNE标志为1(表示接收缓冲区非空),读SPI数据寄存器(SPIx_DATAR)中的数据并同时清除RXNE标志位。重复上述操作,发送后续数据并同时接收后续数据(n-1个); 4、等待SPI状态寄存器(SPI_SR)位0 RXNE标志为1(表示接收缓冲区非空),接收最后一个数据; 5、等待SPI状态寄存器(SPI_SR)位1 TXE标志位为1,在位7BSY标志位置0(SPI不在通讯)后关闭SPI模块。
0
|
|
|
|