主题中讨论的其他器件:HALCOGEN
大家好、
我一直在尝试在 端口 A 和端口 B (MibSPI)之间使用 DMA 数据传输。
1.使用 MPU 尝试使用共享存储器(正常的内部和外部不可分离和共享存储器类型)、如 example_mibspidma.c (Halcogen/examples)中所述。 此任务成功。
2.使用 coreCleanDCByAddress 和 coreCleanInvalidateDCByAddress 进行了尝试(没有任何 MPU 配置)。 当块传输完成但 RXDATA 为空时、我确实会看到 DMA 中断通知
coreCleanDCByAddress ((uint32_t)&TXDATA[0]、D_size << 1U);/*清理字节*/
coreCleanInvalidateDCByAddress ((uint32_t)&RXDATA[0]、D_size << 1U);//清理并丢弃旧的高速缓存数据*/
i.是否有任何方法可以使用不带 MPU (正常的内部和外部不可缓存和共享存储器类型)的 DMA、如上所述或任何其他方法?
提前感谢