求助DMA存储器to存储器之数据流的选择问题
在火哥的DMA存储器到存储器例程中使用DMA2的stream0和任意通道,程序正常运行,而使用其他stream数据流时出现了问题,我仿真后检查是程序卡在此处
进一步debug发现在此函数中,程序未执行以下函数:
/* Check the status of the specified DMA flag */
if ((tmpreg & DMA_FLAG) != (uint32_t)RESET)
{
/* DMA_FLAG is set */
bitstatus = SET;
}
else
{
/* DMA_FLAG is reset */
bitstatus = RESET;
}
并重新回到该函数开头,反复循环。
然后我查验DMA传输标志位均为如图所示,但该函数就是不执行
还有选择stream0时DMAy_Streamx中的值有更新状态,如图
而选择其他stream没有,如图
求解为何选择stream0以外的数据流会出现此情况,感谢! |