我们发现 DMA 通道是由硬件触发意外触发的。
更多的请求信号被组合到一个逻辑或块中。 很明显。 而且很明显、只有当外设上的所有 DMA 请求信号都被禁用时、它才能够正常工作、这是所需的信号。
问题是来自 I2C 的 DMA 信号在默认状态下被启用(I2CDMACR 寄存器)。 我们感到惊讶、我需要提醒其他人、因为通常的通用设置是禁用的。
我有一个问题。 您是否列出了默认启用的 DMA 信号? 对于外置 ADC (ADEVDMACR.EV_DMA_EN)禁用、CAN ID 禁用(DCANCTL.DE*),SPI 也禁用(SPIINT*。DMAREQEN)。