本帖最后由 Leeg2016 于 2017-10-14 20:54 编辑
(1)发送序列
数据字节在写周期内被并行加载到发送缓冲区中。
当从器件在其 MOSI 引脚上收到时钟信号和数据的最高有效位时,发送序列开始。其余
位 (8 位数据帧格式中的 7 个位,16 位数据帧格式中的 15 个位)将加载到移位寄存器中。
SPI_SR 寄存器中的 TXE 标志在数据从发送缓冲区传输到移位寄存器时置 1,并且在 SPI_CR2
寄存器中的 TXEIE 位置 1 时将生成中断。
(2)接收序列
对于接收器,在数据传输完成时:
● 移位寄存器中的数据将传输到接收缓冲区,并且 RXNE 标志(SPI_SR 寄存器)置 1
● 如果 SPI_CR2 寄存器中的 RXNEIE 位置 1,则生成中断。
在出现最后一个采样时钟边沿后,RXNE 位置 1,移位寄存器中接收的数据字节被拷贝
到接 收缓冲区中。当读取 SPI_DR 寄存器时,SPI 外设将返回此缓冲值。通过读取 SPI_DR
寄存器将 RXNE 位清零。
以上这段话摘自STM32F4中文参考手册,假设STM32跟外设芯片进行SPI通信,谁能给详细解释一下通信的完成过程,越相信越好(上面的发送序列和接受序列看不太明白),感谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>