Part Number:AM5728
/**
* \briefEDMA3 Initialization
*
* This function initializes the EDMA3 Resource Manager for the given EDMA3 controller
* and opens a EDMA3 RM instance. It internally calls EDMA3_RM_create() and
* EDMA3_RM_open(), in that order.
*
* It also registers interrupt handlers for various EDMA3 interrupts like* transfer completion or error interrupts.
*
* \param edma3Id [IN] EDMA3 Controller Instance Id (Hardware
* instance id, starting from 0)
* \param errorCode [IN/OUT] Error code while opening RM instance
* \return EDMA3_RM_Handle: If successfully opened, the API will return the
*associated RM's instance handle.
*/
EDMA3_RM_Handle edma3init (uint32_t edma3Id, EDMA3_RM_Result *errorCode);
typedef enum
{
CSL_XBAR_DMA_CPU_ID_SYSTEM_DMA,
CSL_XBAR_DMA_CPU_ID_EDMA,
CSL_XBAR_DMA_CPU_ID_DSP1_DMA,
CSL_XBAR_DMA_CPU_ID_DSP2_DMA
} CSL_XbarDmaCpuId;

我有多个外设需要用到EDMA,使用EDMA3 LLD库,遇到一些问题,希望TI工程师可以答疑。
问题1:edma3init() 函数的第一个参数 edma3Id,应该如何配置?是否按照 Table 16-125. EDMA_TPCC_PID 里的instance id配置,还是与 CSL_XbarDmaCpuId enum一致?
问题2:若多个外设都需要使用EDMA,每个外设都需要执行一次edma3init()吗?即EDMA3_RM_Handle是否是共用的?
Nancy Wang:
zy zhao 说:edma3init() 函数的第一个参数 edma3Id,应该如何配置?是否按照 Table 16-125. EDMA_TPCC_PID 里的instance id配置,还是与 CSL_XbarDmaCpuId enum一致?
不一样的,在例程中给出的定义都是不同的。
edma3init中edma3Id :EDMA3 Controller Instance Id (Hardware instance id, starting from 0) 我的理解是指EDMA控制器的ID号。
建议参考SDK中给出的例程学习配置。
ti-processor-sdk-rtos-am57xx-evm-06.00.00.07-Windows\pdk_am57xx_1_0_15\packages\MyExampleProjects\MCSPI_BasicExample_Dma_idkAM572x_armTestProject
zy zhao 说:若多个外设都需要使用EDMA,每个外设都需要执行一次edma3init()吗?即EDMA3_RM_Handle是否是共用的?
这个需要咨询一下相关工程师再给你回复。
,
zy zhao:
edma3init中edma3Id :EDMA3 Controller Instance Id (Hardware instance id, starting from 0) 我的理解是指EDMA控制器的ID号。
问题就是,EDMA控制器的ID号我从哪里获取呢?在DSP或者ARM是否可以设置一样的edma3Id?
,
Nancy Wang:
zy zhao 说:
edma3init中edma3Id :EDMA3 Controller Instance Id (Hardware instance id, starting from 0) 我的理解是指EDMA控制器的ID号。
问题就是,EDMA控制器的ID号我从哪里获取呢?在DSP或者ARM是否可以设置一样的edma3Id?
参考:
e2e.ti.com/…/edma3-on-am5728-rtos-dsp
,
zy zhao:
好的,非常感谢
,
Nancy Wang:
zy zhao 说: 问题2:若多个外设都需要使用EDMA,每个外设都需要执行一次edma3init()吗?即EDMA3_RM_Handle是否是共用的?
我将第二个问题升级到了英文论坛,请等待回复:
e2e.ti.com/…/am5728-edma
,
zy zhao:
好的,感谢回答,我会持续关注
,
Nancy Wang:
不客气。
TI中文支持网

![TMS320F28379D: 导入例程出现故障Description Resource Path Location Type gmake: *** [gridconnectedinvlclfltr.obj] Error 1 gridConnectedInverterLCLFltr C/C++ Problem-TI中文支持网](https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_C2000_pastedimage1752114958744v1.jpg)

