打印

DM648的EDMA3.0应用

[复制链接]
3381|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zjd1|  楼主 | 2010-3-17 18:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DM648EDMA3.0应用
前段时间调试DM648,有一些笔记,跟大家分享一下。虽然用到DM648的朋友会很少,但正因为64+的资料不容易找,所以才把相关笔记整理发出来,希望能对做64+的朋友提供一些方便。

下面的函数描述了EDMA配置到启动的过程(完全寄存器级的操作,更有利于理解EDMA3.0的操作过程)。
EDMA_init()
{

/* Step 1: EDMA
寄存器初始化 */

QUEPRI=0x10;
//queue
优先级设置,0230级,11

QWMTHRA =(16<<8u)|(16 & 0xFF);
//queue
超长报错设置,01均为16230

EMCR =
0xFFFFFFFF;
//
清除所有EDMA事件丢失标志

CCERRCLR = 0xFFFFFFFF;
//
清除所有EDMA3CC错误



//
VP2亮度事件触发为例

/* Step 2: Programming DMA Channel (and Param set) */


DCHMAP32=0x80<<5;
//
对应EVENT32与第128PARAM

DMAQNUM4=0x0;
//
EVENT32项对应到QUEUE0通道

//
设置第128PARAM值,重载表设为129

OPT128 = 0x00105301;
// TCINTEN is set,A sync,TCC=5,64bit FIFO


SRC128 = YSRCA2;


A_B_CNT128 = ((frameCount << 16u) | (elementCount & 0xFFFFu));

// ACNT = 1536, BCNT = 2


DST128 = (unsigned int )line_buffer2;


SRC_DST_BIDX128 = (elementCount << 16u) | (0u);
// SRC_BIDX = 0, DST_BIDX = 1536


//
一次完整的EDMA搬移完成后,用第129PARAM表装载到第128项表

LINK_BCNTRLD128 = (frameCount << 16u) | 0x1020u;
// LINK = 129, BCNTRLD = 1


SRC_DST_CIDX128 = (elementCount << 16u) | (0u);


CCNT128 = 1;



//
129PARAM表为备份表,用于重载到第128PARAM

OPT129 = 0x00105301;
// TCINTEN is set,A sync,TCC=5,64bit FIFO


SRC129 = YSRCA2;


A_B_CNT129 = ((frameCount << 16u) | (elementCount & 0xFFFFu));
// ACNT = 1536, BCNT = 2


DST129 = (unsigned int )line_buffer2;


SRC_DST_BIDX129 = (elementCount << 16u) | (0u);
// SRC_BIDX = 0, DST_BIDX = 1536


//
129PARAM表装载到第128项表,仍然指向第129PARAM

LINK_BCNTRLD129 = (frameCount << 16u) | 0x1020u;
// LINK = 129, BCNTRLD = 1


SRC_DST_CIDX129 = (elementCount << 16u) | (0u);


CCNT129 = 1;





/* Step 3: Triggering the Transfer and Waiting for Transfer Completion */


EESRH = 0x1;
//enable event VP2EVTYA channel , number 32

//
ESRH = 0x1;//
调试时可用于手动触发EDMA事件,观察EDMA模块工作情况
}

相关帖子

沙发
zjd1|  楼主 | 2010-3-17 18:56 | 只看该作者
本帖最后由 zjd1 于 2010-3-17 18:59 编辑

呵呵,不晓得怎么搞排版,版面比较滥,希望需要的朋友多包涵哪:)
如果需要更多相关的资料可以到我的个人空间来找找
http://user.qzone.qq.com/37564275

使用特权

评论回复
板凳
lobby| | 2010-3-17 21:12 | 只看该作者
我刚开始学648,
谢谢分享资料。

使用特权

评论回复
地板
贾君鹏子| | 2010-3-18 20:19 | 只看该作者
不错不错

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

103

帖子

18

粉丝