你好。
我已经将 SPI1设置为从器件。 我还设置了一个 DMA 通道将接收到的数据传输到存储器缓冲区、另一个 DMA 通道将数据从另一个存储器缓冲区传输到 SPITX 寄存器进行发送。 我可以通过将 GPIO 引脚拉至高电平来触发 SPI 主器件发送1040字节。
这在 SPI 传输期间发生干扰之前一直有效。 然后、我会在接收存储器缓冲区中看到一个多一个位(通常还有更多字节)的偏移量。 如果下一个数据包将再次从偏移零开始、这是可以的。 但它不会。 由于新的干扰、偏移将保持恒定或增加。
我的想法是在拉 GPIO 引脚进行新的传输之前重置 DMA 通道。
但是、我该怎么做呢? 我不想复位整个 DMA 控制器、因为其他外设也会使用它。
我希望我已经足够好地解释了我的问题。
谢谢、致以诚挚的问候
Christian