可以使用__DSB()函数来确保DMA设备的更改被完全写入内存后才清除缓存。代码示例如下:
// 设置DMA传输 DMA_Setup(&dma_config);
// 等待DMA传输结束 while(DMA_Busy()){};
// 使用DSB函数确保DMA设备的更改被完全写入内存 __DSB();
// 清除缓存 L1C_InvalidateDCacheAll();
上一篇:ARMCortexM7MPU共享性对M7性能的影响
下一篇:ARMCPU的已知状态是什么?