如题目所说,为什么进入中断,标志位却不成立啊,中断设置是这样的
NVIC_InitStructure.NVIC_IRQChannel=TIM3_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0x00;
NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x03;
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
NVIC_Init(&NVIC_InitStructure);
然后在中断函数里判断标志位是这样的。
if(DMA_GetITStatus(DMA2_Stream0, DMA_FLAG_TCIF0)==SET)
总之进不去if,为什么啊,新手一枚,调试好久了,求大神指点。
上面是定时器中断,下面才是dma中断,然后还是那个问题
void MYDMA_Interrupt(void)
{
NVIC_InitTypeDef NVIC_InitStructure;
DMA_ITConfig(DMA2_Stream0,DMA_IT_TC,ENABLE);//????DMA?????ê????????
NVIC_InitStructure.NVIC_IRQChannel=DMA2_Stream0_IRQn ; //DMA2?????÷0????
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0x01; //??????????1
NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x03; //×???????3
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>