本帖最后由 chenxiaolang 于 2020-1-7 23:57 编辑
最近开始调试HC32F030 DMA外设,发现官方手册介绍的相对简洁,有些不明白的地方,希望高手解答讨论:
1、手册中提出“块”概念,这个是为Block模式准备的吗?在Burst模式下没有传输间隙,这个“块”有什么作用,用来增加总数据量吗?
2、为使用硬件触发,必须是内核和外设主频一致?DMA的作用就是解放CPU,让外设之间搬运数据,为何有如此限制?
3、看了官方提供的例程,是RAM和RAM之间,或者外设到RAM的搬运,如果RAM到外设如何配置?比如有16个元素的数组,希望通过DMA从UART发送,可以实现吗?(下面的配置是不可行的)
|
DMA与外设进行交互时,一般BC都应设为0。以实现每触发一次传输一个字节/半字/字。
外设到RAM / RAM到外设只能使用硬件块传输。详见下方4种传输模式对比。