谁用DMA连续接收过串口数据.急急急....

2019-03-23 20:28发布

DMA串口接受不能连续接.一次之后.清标志位.重配置都不行.我连RCC.NVIC都重配置了.这样几乎和第一次一样了...就是不能再次收...大家帮帮忙吧.麻烦大家了
上片段:
while(1) { LCD_ShowString(30,50,"please wait..."); TIM_Cmd(TIM2, ENABLE);
while(!timeup); timeup=0; GPSledon; TIM_Cmd(TIM2, DISABLE); LCD_ShowString(30,50,"getting GPS data...");
DMA_Configuration(); USART_DMACmd(USART1, USART_DMAReq_Rx, ENABLE);  DMA_Cmd(DMA1_Channel5, ENABLE); // while(!DMAflag); while (DMA_GetFlagStatus(DMA1_FLAG_TC5) == RESET);//while(!(DMA1->ISR&(1<<17)));//等待通道5传输完成
DMA_ClearFlag(DMA1_FLAG_GL5);  //--调试部分 DMA_ClearFlag(DMA1_FLAG_TC5); DMA_Cmd(DMA1_Channel5, DISABLE); DMA_ClearFlag(DMA1_FLAG_GL5);  DMA_ClearFlag(DMA1_FLAG_TC5); //DMA1->IFCR|=1<<17;//清除通道5传输完成标志 /* System Clocks Configuration */ RCC_Configuration(); /* NVIC configuration */ NVIC_Configuration(); /* Configure the GPIO ports */ USART1_Configuration();  //---------- LCD_Fill(30, 50, 200, 70,WHITE); LCD_ShowString(30,115,(u8*)GPSdata); GPSledoff; if(GPSdataformat()) { LCD_ShowString(30,220,"location and time:"); } 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。