STM32 SPI如何采用DMA收发不定长数据?像串口DMA一样不占用CPU

2019-12-15 12:15发布

4021 15 16
本帖最后由 wowangru 于 2018-11-6 15:12 编辑

用不用CS线有多大区别? 我想像串口一样任意收发不定长数据,且不占CPU, 可以不区分主从机。仅仅大数据量通信使用

另外请问SPI采用DMA接收时如何检测帧结束空闲? 帧长度可能不定!  即使帧长度一定,采用定长DMA完成中断,会不会因掉了一个SPI数据后,以后的帧所有数据错位?

看到SPI 结构图, 只有一个移位寄存器? 收发共用? 那如何做到收发同时呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
XA144F
2019-12-17 05:05
go2deathward 发表于 2018-11-6 22:51
他的spi是主机。硬设置成从机,时钟都没有如何传输呢

SPI的发送和接收都是同时进行的,发送多少就同时接收多少。所以DMA的设置的传输数量就是发送和接收的数量,所谓不定长就是你设置数量的问题了。
0人赞 举报

一周热门 更多>