SPI总是进入中断问题
-
-
可能是因为某次打断时间较长,SPI 没来得及读取接收 FIFO 内的数据,导致FIFO内数据上溢,产生 overflow 错误。
如果task 较多,可以用 DMA 的方式去搬运数据,这样就不会受到影响 -
Diga 这个overflow可以清除吗?还是底驱时间不够
-
可以清除,但此次 SPI 通信已经失败了,已经有接收数据被丢弃了,而且下次再被长时间打断,还是会产生 overflow
-
Diga 丢数据没关系,清除的接口是哪个?
是这个吗 -
更正一下,SDK 中断内部是有对错误进行处理的,接收上溢或者发送下溢都会终止当前 SPI 传输。
你可以看一下一直进中断,进的是什么中断,当前状态寄存器是什么 -
Diga
反复进这里 -
Diga
然后进这里,这里所有的if全部没进,直接出来的,也就是说进一次中断什么都没处理 -
看一下状态寄存器,SPI->STS
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...