void USART1_IRQHandler(void)
{
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //接收中断触发
{
if(Enable_rx_timeout_flag == 0)
{
Enable_rx_timeout_flag = 1;
Rx_timeout_count = 0;
TIM_Cmd(TIM3,ENABLE); //使能定时器3
}
Rx_timeout_count = 0;
}
if(USART_GetITStatus(USART1,USART_IT_TXE) != RESET) //发送中断触发
{
Send_Data();
}
}
因为没有清除中断标志位? |