如题,官方有C6657/C6655/C6554的UPP中断例程吗,在论坛上看到的,都存在只能触发一次中断的问题,谢谢!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
如题,官方有C6657/C6655/C6554的UPP中断例程吗,在论坛上看到的,都存在只能触发一次中断的问题,谢谢!
Andy Yin1 你好,感谢回复。
完成中断后,UPIER被清零,说明中断服务程序已经把相关中断标志位清除了,中断后有重配置DMA传输,如下:
if(gtestTxFlag == 1)
{
while(CSL_FEXT(uppRegs->UPIS2, UPP_UPIS2_PEND) == 0)
{
gtestTxCnt++;
upp_dma_prog(UPP_DMA_CHAN_I, (void *)xmtBuffer, 1, 8320, 0);
}
gtestTxFlag = 0;
}
中断一次后,再发生中断(UPIER为0x808),也无法进入中断服务程序,另外pending bit您指的是UPIS2和UPQS2寄存器吧,这两个寄存器为0,说明No transfer pending。一下是无法进入中断服务程序的寄存器值:
按道理您给我的程序应该是没问题,您这边能在EVM6657开发板上验证一下嘛?谢谢!