<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">DMA是一种提高CPU效率的工具。如果让cpu去负责搬运数据,效率是十分低下的,因为在这个过程中,cpu就只能做这么一件事。因此DMA就应运而生。只要告诉dma,要搬运的数据源地址,以及要搬运到哪里去的地址,何种方式,使能它,DMA就会获取总线控制权,自动地搬运数据,从而解放cpu,提高效率。</span>
tq2440的dma裸机驱动,按以下方式进行初始化:
//初始化原地址
//初始化目的地址
//dma 控制方式初始化
//使能dma
参照2440芯片手册,dma共有4个通道,我们选择将字符串数据传输到串口上(UART0),对应通道ch-0.
each DMA channel has nine control registers.ch-0 有9个寄存器,但在本次裸机驱动中,并不需要全部用上。(用到再来细究)

本文介绍了如何初始化TQ2440的DMA裸机驱动,用于将字符串数据通过DMA通道0传输到UART0。内容包括设置原地址、目的地址、DMA控制方式以及最后的DMA使能。在初始化过程中,详细说明了各个控制寄存器的配置,如DISRCn、DISRCCn、DIDSTn、DIDSTC0和DCONn等,确保数据正确传输并触发中断。

4700

被折叠的 条评论
为什么被折叠?



