串口中断接收问题

2019-07-20 22:15发布

void USART2_IRQHandler(void)              
{
   if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)  
         {
           Re_buf[counter]=USART_ReceiveData(USART2);
           USART_ClearFlag(USART2, USART_FLAG_TC);       
          if(counter==0&& Re_buf[0]!=0x55) return;
                counter++;       
                if(counter==11)
                {       
                counter=0;
                sign=1;
                }
         }
  }
主函数里边对sign的值进行判断,判断后将其置0,但是中断函数只能执行2次,就再也不对sign置1了。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。