EDMA是一种数据传输模式,用EDMA建立无需CPU干预的外部设备与内存之间的直接数据传输通道,节省CPU工作时间。
EDMA控制器主要包含传输控制器和通道控制器两部分。传输控制器包含了将要传输的数据,而通道控制器是通过一个触发事件或者它接收到一个传输请求TR,从而实现进入传输入口的。注意它的传输主要是事件触发的特点。
EDMA有三种触发方法:
1、最主要的通过外部事件来触发一次TR;
2、通过某个指定的传输完成后触发另一个的连锁触发方式;
3、CPU触发,通过往事件设置寄存器ESR中写数,一般调试用。
EDMA有1D和2D两种传输模式。1D的数据组成为块-》帧-》元素,2D的数据组成为块-》数组-》元素。
每个外设都有寄存器,EDMA的寄存器如下:
ESEL:设置EDMA事件与通道的映射关系(有些dsp型号是固定映射的);
PQSR:表示状态,表示传输寄存器在每个优先级水平上是否为空;