u8 USART2_RX_STA=0;
void USART2_IRQHandler(void)
{
u8 res;
BEEP=0;
delay_ms(1);
BEEP=1;
delay_ms(10);
BEEP=0;
if(USART2->SR&(1<<5))
{
res=USART2->DR;
if(res==0x0D)
{
USART2_RX_STA|=0x80;
finish=1;
}
else
{
USART2_RX_BUF[USART2_RX_STA&0X3F]=res;
USART2_RX_STA++;
if(USART2_RX_STA>(USART2_MAX_LEN-1))
{
USART2_RX_STA=0;
}
}
}
}
此次贴上中断处理函数
|