ric*_*nle 2 c stm32 dma stm32f4discovery
stm32F4系列的DMA有一些高级功能,我可以在这里要求澄清吗?
并发流:两个流可以同时传输数据吗?由于允许一个字节传输.如果总线宽度为32位,则可以进行4次并发传输.顺便说一下,STM32的AHB总线宽度是多少?
FIFO模式:如果无法进行并发传输,我猜这里可以使用FIFO.FIFO将有助于将数据从低速外设等待到DMA而不占用AHB总线.当准备好一定数量的数据时,数据块将一起发送到内存.我的理解是否正确?
四字深度每个流32个先进先出存储缓冲器(FIFO)
那是什么意思?FIFO中可以存储多少数据?4或4*32?
突发模式:实际突发模式有什么作用?它在数据表中说可以传输65535个数据.65535与突发模式之间有什么关系?
双缓冲模式:
双缓冲区类型事务:使用两个
内存指针进行内存的双缓冲区传输(当DMA
从/向缓冲区读/写时,应用程序可以向/从另一个
缓冲区写入/读取).-----来自STM32F4的参考手册
我的问题是:在DMA传输期间,AHB总线不适用于Cortex M4,应用程序如何从其他缓冲区读取?
在做了一些研究之后,我发现了这个,以防有人需要它.
并发流:在一个DMA中不可能.可以同时运行DMA1,DMA2.例如:F427可以同时执行:
FIFO用于临时存储来自低速设备的数据.当累积了一定数量的数据时,可以发送突发,以节省AHB的资源.由于DMAC使用AHB时,处理器无法使用它.FIFO具有4*32位大小.它可以配置为16*8位(16*0ne字节).