DMA完成中断问题

使用CH32V307的SPI DMA功能,主机,用的软件控制片选,1线TX模式。

当DMA填充数据并发送之后,MOSI和SCK都正常输出,数据正确。但是发送完成中断DMA_TCx提前大概1个多字节时间先出现了,我想在这里加片选释放,但会提前。请问如何用SPI DMA方式发送数据,并同步片选输出呢?

您好,


        DMA通道x传输完成是指DMA的某个通道,完成了数据的搬运,这并不代表SPI这个外设,完成了数据的传输。在释放片选信号前先等待发送缓冲区为空标志,再等待SPI忙标志位复位,具体请参考应用手册中对寄存器的说明。

image.png





感谢回复,

也就是说DMA发送TC中断出来之后,还需要再继续判断SPI 的TXE为空加上BUSY为0不通讯,此时释放CS控制信号,对吧?


只有登录才能回复,可以选择微信账号登录