工具/软件:Code Composer Studio
尊敬的 TI 专家:
我使用 F28377D CPU2从 emif1向 DMA 数据创建了一个项目、并在 Code 复合软件工作室中创建了一个项目。 当 触发事件频率为667khz 或更高时、我遇到 DMA 报告溢出的问题。 当我将触发事件设置为500kHz 时、不会设置溢出标志。
如果它在 CPU1中运行相同的配置、则不会报告溢出标志。 有什么问题?
我尝试将外部 GPIO 中断和 CPU2中的 EPWM1 SOCA 作为触发源、两者均在667khz 或1M 的运行 IF 频率上。
我正在使用 DMA CH1。 即使我将 CH1设置为最高优先级、也没有任何变化。
以下是 CPU2 DMA 配置的代码。 DMA 时钟在 main 上被启用。
//初始化 DMA
DMAInitialize();
EALLOW;
DmaRegs.PRIORITYCTRL1.bit.CH1PRIORITY = 1;//配置通道1高优先级
EDIS;
DMACH1AddrConfig ((volatile UINT16 *)&DMADbuffer[0]、(volatile UINT16 *) external_ADC_address);
DMACH1BurstConfig (0、0、0);//将设置为使用32位数据大小、指针基于16位字
DMACH1TransferConfig (0、0、2);
DMACH1WrapConfig (0xFFFF、0、0xFFFF、0);
DMACH1ModeConfig (DMA_EPWM1A、PERINT_ENABLE、OneShot_disable、CONT_ENABLE、
SYNC_DISABLE、SYNC_SRC、OVEFLOW_ENABLE、第三十二位、CHINT_BEGIN、
Chint_enable);
您能帮助分析吗?
提前感谢。