| STM32F103C8T6 串口2用来DMA接收数据 ,50ms接收一帧数据(100字节);串口1接收上位机的回值判断signalflag变量的值,如signalflag==1数据发送给上位机,signalflag==0就把数据存储在外部flash里面,在大量测试下发现串口2接收会偶尔出现莫名其妙的死掉的情况(收不到数据了),不知道问题出在哪了,有没有人遇到过这种问题呢? 
 
  while(1)
        {        
                IWDG_Feed();
                if(signalflag==1)   
                {
                        LEN_RevData=DMABuffSize-DMA_GetCurrDataCounter(DMA1_Channel6);
                        if((LEN_RevData>=DataSize)&&(LEN_RevData%DataSize==0))
                        {
                                DMA_Cmd(DMA1_Channel6,DISABLE);//关闭通道
                                USART1WriteDataToBuffer(USART2_BUF1,LEN_RevData);           
                                DMA_SetCurrDataCounter(DMA1_Channel6,DMABuffSize);//设置DMA缓存的大小
                                DMA_Cmd(DMA1_Channel6,ENABLE);//使能通道
                        }
                        else if((FlashReadPage!=FlashWritePage)||((FlashWriteAddr-FlashReadAddr)>=DataBuffSize))//判断外部Flash内是否有未发送的数据
 
 
 |