EDMA使用文档原创.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDMA使用文档原创

C6455 EDMA应用介绍 EDMA调用操作流程 EDMA初始化. 函数:void CSL_edma3Init(CSL_Edma3Context * pContext); 打开EDMA CSL_edma3Open(edmaObj,CSL_EDMA3,NULL,status); EDMA module setup CSL_edma3HwSetup(hModule,hwSetup); Setup the DRAE masks CSL_edma3HwControl(hModule,CSL_EDMA3_CMD_DMAREGION_ENABLE, \ regionAccess); Channel open CSL_edma3ChannelOpen(chObj, CSL_EDMA3, chAttr, status); Get the parameter handle CSL_edma3GetParamHandle(hChannel,0,status); EDMA parameter entry setup EDMA通道参数入口: ① OPT选项参数 PRI: 优先级设定 1:高优先级 0:低优先级 ESIZE: 传输的元素大小 0:32bit(64x为64bit) 1:16bit 2:8bit SYNCDIM: 选择数据为1d,或是2d结构 0:1d 1:2d SAM: 源地址变化方式 1:不变 0:自增 DAM:  目的地址变化方式 1:不变 0:自增 TCINTEN: 当全部数据传输完成,如果该位为1,将产生对应通道(TCC值)发送完成中断。用于链接发送或中断产生。 0:禁止中断 1:允许中断 TCC: 发送完成中断的通道号 TCCM: 与TCC组合成6位数的通道号 ② SRC源操作数地址 ③ CNT 传输的长度 ④ DST 目的操作数地址 ⑤ IDX 通道索引参数 ⑥ RLD 通道链接/重载参数 Set EDMA Event Enable Registers (EERH + EER) clear any pending event and then enable channel: CSL_edma3HwChannelControl(hChannel,CSL_EDMA3_CMD_CHANNEL_CLEAR,NULL); Event enable: CSL_edma3HwChannelControl(hChannel,CSL_EDMA3_CMD_CHANNEL_ENABLE,NULL); Enable interrupt regionIntr.region = CSL_EDMA3_REGION_1 ; regionIntr.intr = 1TCC ; regionIntr.intrh = 0 ; CSL_edma3HwControl(hModule,CSL_EDMA3_CMD_INTR_ENABLE,regionIntr); Manually trigger the channel 此时,EDMA的配置全部完成,启动EDMA: CSL_edma3HwChannelControl(hChannel,CSL_EDMA3_CMD_CHANNEL_SET,NULL); EDMA、QDMA概念 ▲ 寄存器 ① PQSR:优先排队状态寄存器   PQ0-3 = 1 表示无请求挂起 ② PQAR0-3:优先队列配置寄存器   PQA表示队列长度 ③ CIPR (CIPRL,CIPRH)64BIT EDMA通道中断挂起寄存器 由硬件自动置位,=1表示该通道产生中断挂起 ④ CIER(CIERL,CIERH)64BIT EDMA通道中断使能寄存器 当通道相应位=1时, 该通道允许中断 ⑤ CCER(CCERL,CCERH)64BIT EDMA通道链接使能寄存器 用于链接触发多个通道传输 ⑥ ERL、ERH事件寄存器 不管事件是否使能,只要有相应通道事件发生,都会更新ERL和ERH ⑦ EERL,EERH事件使能寄存器 当相应通道事件使能后,可以允许中断等操作。当采用CPU触发操作EDMA时,可以不用设置该寄存 器 void EDMA_disableChannel(EDMA_Handle hEdma); void EDMA_enableChannel(EDMA_Handle hEdma); ⑧ ECRL,ECRH事件清除寄存器 当采用CPU触发方式时,硬件自动清零该寄存器,事件触发方式下需要手动清零?? ⑨ ESRL,

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档