DMA中断的优先级要比AD中断的优先级低,所以两个同时触发DMA也要排在后边,然后将AD转换生成的结果搬移,可以实现吗
Emma Wang:
如果您希望将ADC的转换结果通过DMA方式传递的话,可以考虑用ADC的中断触发DMA。
DMA中断的优先级要比AD中断的优先级低,所以两个同时触发DMA也要排在后边,然后将AD转换生成的结果搬移,可以实现吗
Fangyuan Zeng:
回复 Emma Wang:
您好,Emma Wang1!
您说的是ePWM的SOC触发AD中断转换数据,然后AD的SEQ1触发DMA搬移吗?如果是都通过SOC触发的话,有可能实现吗,我并没有找到相关的例程,而且在DMA定义中,触发源的定义虽然备注里写了,但是定义的时候并未涉及ePWM的SOC触发DMA,这是为什么呢?可能有些是我理解错误,提的问题比较可笑,请见谅,谢谢!
DMA中断的优先级要比AD中断的优先级低,所以两个同时触发DMA也要排在后边,然后将AD转换生成的结果搬移,可以实现吗
Emma Wang:
回复 Fangyuan Zeng:
对于你第一个问题,理论上是可以的,实际上DMA的读取结果可能不是ADC的转换结果,所以一般不会这么用。
DMA触发源的定义在DMA.h中:
struct MODE_BITS { // bits description
Uint16 PERINTSEL:5; // 4:0 Peripheral Interrupt and Sync Select Bits (R/W): // 0 no interrupt // 1 SEQ1INT & ADCSYNC // 2 SEQ2INT // 3 XINT1 // 4 XINT2 // 5 XINT3 // 6 XINT4 // 7 XINT5 // 8 XINT6 // 9 XINT7 // 10 XINT13 // 11 TINT0 // 12 TINT1 // 13 TINT2 // 14 MXEVTA & MXSYNCA // 15 MREVTA & MRSYNCA // 16 MXEVTB & MXSYNCB // 17 MREVTB & MRSYNCB // 18 ePWM1SOCA // 19 ePWM1SOCB // 20 ePWM2SOCA // 21 ePWM2SOCB // 22 ePWM3SOCA // 23 ePWM3SOCB // 24 ePWM4SOCA // 25 ePWM4SOCB // 26 ePWM5SOCA // 27 ePWM5SOCB // 28 ePWM6SOCA // 29 ePWM6SOCB // 30:31 no interrupt
TI中文支持网



