stm32F4 系列的 DMA 有一些高级功能,我可以在这里问一下吗?
并发流:两个流可以同时传输数据吗?由于允许传输一个字节。如果总线宽度为 32bit,则可以进行 4 次并发传输。顺便说一句,STM32的AHB总线宽度是多少?
FIFO模式:如果不能并发传输,我猜这里可以使用FIFO。FIFO 有助于在不占用 AHB 总线的情况下等待从低速外设到 DMA 的数据准备就绪。当一定数量的数据准备好后,这块数据会一起被发送到内存中。我的理解正确吗?
每个流的四字深度 32 个先进先出内存缓冲区 (FIFO)
这意味着什么?FIFO中可以存储多少数据?4 还是 4*32?
突发模式:突发模式的实际作用是什么?它在数据表中说可以传输65535个数据。65535和burst模式有什么关系?
双缓冲模式:
双缓冲区类型事务:使用
内存的两个内存指针进行双缓冲区传输(当 DMA
从/向缓冲区读取/写入时,应用程序可以向/从另一个
缓冲区写入/读取)。-----来自STM32F4的参考手册
我的问题是:在 DMA 传输期间,Cortex M4 无法使用 AHB 总线,应用程序如何从另一个缓冲区读取?