最近在看SPI通信,文章参考SPI原理超详细讲解---值得一看-CSDN博客
但在阅读到这个地方,结合F407的中文手册,心中一直一个疑问。

文章介绍说SPI通信是发一个数据,就要收一个数据,查询F407的SPI通信部分的手册可以知道,发送数据的时候,TXE发送缓存区空会置1,那么,发一个数据,收一个数据,岂不是TXE永远不会置1了?

顺着这个疑问,我询问了AI,结合AI的回答,我总结出了以下知识点:<U8举例>
1.TXE检测的是发送缓存区的数据
2.发一个数据 收一个数据 这个过程是在移位寄存器当中进行的
3.当移位寄存器经过8个时钟周期 把收到一个完整字节复制到对应的缓存区当中

分析RXNE标志位同理,自己分析即可。