新手上路
- 积分
- 25
- 金钱
- 25
- 注册时间
- 2019-5-17
- 在线时间
- 3 小时
|
发表于 2019-5-26 21:11:26
|
显示全部楼层
void USART1_IRQHandler(void)
{
uint8_t Res;
#if SYSTEM_SUPPORT_OS //èç1ûSYSTEM_SUPPORT_OSÎaÕæ£¬ÔòDèòaÖ§3ÖOS.
OSIntEnter();
#endif
if(USART_GetITStatus(USART1, USART_IT_RXNE)!=RESET)
{
Res=USART_ReceiveData(USART1);
USART_ClearITPendingBit(USART1,USART_IT_RXNE);
TIM_ClearITPendingBit(TIM2,TIM_IT_Update); //Çå3y¶¨ê±Æ÷TIM7μÄÖD¶Ï
TIM_SetCounter(TIM2,0X0001); //½óêÕμ½ò»¸ö×Ö½ú½«¶¨ê±Æ÷Çå0
TIM_Cmd(TIM2,ENABLE); //¿aê¼¼Æê±
if((USART1_RX_STA&0x8000)==0) //½óêÕÎ′íê3é
{
if(USART1_RX_STA&0x4000) //½óêÕμ½áË0x0D
{
if(Res!=0x0a) USART1_RX_STA=0; //½óêÕ′íÎó£¬ÖØD¿aê¼
//else USART1_RX_STA|=0x8000; //½óêÕíê3é
}
else //Î′½óêÕμ½0x0D
{
if(Res==0x0D) USART1_RX_STA|=0x4000;
else
{
USART1_RX_BUF[USART1_RX_STA&0x3fff]=Res;
USART1_RX_STA++;
if(USART1_RX_STA>(USART1_REC_LEN-1)) USART1_RX_STA=0;
}
}
}
}
#if SYSTEM_SUPPORT_OS //èç1ûSYSTEM_SUPPORT_OSÎaÕæ£¬ÔòDèòaÖ§3ÖOS.
OSIntExit();
#endif
}
|
|