TI论坛
直播中

李方树

8年用户 172经验值
私信 关注
[问答]

请问C6678 一个事件可以同时出发两个EDMA channel吗

EDMA的channel和event好像是对应的,没有办法手动的map,想知道这种情况下,如何让一个外部事件通过gpio同时触发两个edma的channel。谢谢~

回帖(3)

王英

2018-8-6 08:02:11
1对多的映射需要使用INTC2或者INTC3将GPIO事件映射到多个channel上,结合C6678手册第7.5节Interrupt以及附件手册,你可以了解如何使用该功能。
举报

李方树

2018-8-6 08:13:01
引用: hdfsf 发表于 2018-8-6 08:02
1对多的映射需要使用INTC2或者INTC3将GPIO事件映射到多个channel上,结合C6678手册第7.5节Interrupt以及附件手册,你可以了解如何使用该功能。

你的意思是用CIC2和CIC3来映射吧,我试过,gpio输入的触发信号先经过cic的映射到cic_out,然后cic_out作为edma的触发event,但是CIC的system interrupt到channel的map不能一对多,cic的文档SPRUGW4A(1.3.3节)里有如下一句:
please note that the interrupt cannot be mapped to multiple channels but the connection is selected by the channel map register value.
所以gpio到cic_out的映射是一对一的,切cic_out与edma event的映射是fixed的,不可更改,
On the C6678, the association of each synchronization event and DMA channel is fixed and cannot be reprogrammed.
所以没找到合适的方法来讲gpio映射到多个edma channel上去,我现在直接用gpio的pin0,pin1分别触发edma的两个channel,pin0,1短接。但是浪费一个管脚啊。
举报

杨娟

2018-8-6 08:20:55
引用: 邱艳yyxx 发表于 2018-8-6 08:13
你的意思是用CIC2和CIC3来映射吧,我试过,gpio输入的触发信号先经过cic的映射到cic_out,然后cic_out作为edma的触发event,但是CIC的system interrupt到channel的map不能一对多,cic的文档SPRUGW4A(1.3.3节)里有如下一句:
please note that the interrupt cannot be mapped to multiple channels but the connection is s ...

CIC的配置可以多对一,但是不能一对多.
但是一个GPIO产生的事件可以分别路由到CIC及EDMA,如GPIO0产生的中断事件可以直接路由到EDMACC1 CHANNEL6及EDMACC2 channel6,并且可以路由到CIC3_0,所以可以用GPIO0产生的事件同时出发3个不同的通道;
如果某个事件只路由到一个CIC的输入,则这个事件一次只能触发一个channel,但是可以在这个EDMA channe完成后去chain下一个channel。
                                                                          

举报

更多回帖

发帖
×
20
完善资料,
赚取积分