在串口中断服务函数中,开启了接受中断,当串口接受到一个数据时,两个LED灯电平跳变,输出常量,但是串口接受到数据后,不能输出常量,用串口调试助手查看,没有任何数据,但是单片机在不停的发送空格,LED灯也不能轮流跳变,请问是什么问题,该怎么解决?
void USART1_IRQHandler()
{
//u8 res;
if(USART_GetITStatus(USART1,USART_IT_RXNE))
{
//res= USART_ReceiveData(USART1);
USART_SendData(USART1,0x01);
if(GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_5)==Bit_SET)
{
GPIO_ResetBits(GPIOB,GPIO_Pin_5);
}
else
GPIO_SetBits(GPIOB,GPIO_Pin_5);
if(GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_5)==Bit_SET)
{
GPIO_ResetBits(GPIOE,GPIO_Pin_5);
}
else
GPIO_SetBits(GPIOE,GPIO_Pin_5);
}
}
|