TMS320C6455入门实践(十)——EDMA3相关
作者:互联网
目录
本文主要介绍TMS320C6455的与EDMA3相关的内容,参考文档为:
SPRU966C - TMS320C645x DSP Enhanced DMA (EDMA3) Controller User’s Guide
整体结构
学习一种外设的使用,最直接的方法就是看例程。基本上只要能够掌握主要寄存器的功能,就可以比较得心应手了。
C6455的EDMA3包括了一个通道控制器(CC)和四个传输控制器(TC)。DMA有64个外部事件输入,对应64个DMA通道。CC中有4个队列(Queue)。每个通道和队列(16个入口)或是和参数表(256个入口)都可以用寄存器来绑定。
总共有8个Region可以进行操作,这个主要是用于多用户时的编程,不同用户间的EDMA将不相互影响。
手册中还提到了阴影寄存器(Shadow Register),我的理解是同一个功能的寄存器有不同的地址。
主要寄存器
- DCHMAP和QCHMAP 将Channel和PaRAM绑定
- DMAQNUM和QDMAQNUM,将Channel和Queue绑定
- Q0->T0, Q1->T1, Q2->T2, Q3->T3
- QUEPRI 队列优先级
- 一堆错误指示相关的寄存器
- DRAE和QRAE Region访问使能
CSL的使用
Module相关设置
- CSL_edma3Open();
- CSL_edma3HwSetup(); 指定了所用的队列
- CSL_edma3HwControl(); Region相关设置
通道相关设置
- CSL_edma3ChannelOpen(); 选择要设置的通道和Region
- CSL_edma3GetParamHandle(); 通道和PaRAM绑定
- CSL_edma3ParamSetup(); 设置PaRAM
在同一个Region中还可以对另外的通道进行设置
标签:CSL,入门,Region,TMS320C6455,设置,寄存器,EDMA3,通道 来源: https://blog.csdn.net/qq_35787848/article/details/116160711