u8 RxCounter = 0;     //接收当前位
u8 RxOver = 0;         //字符串接收完成
u8 RxLength = 0;     //字符串实际长度
u8 RxBuffer[20];     //接收缓存
u8 RxBuffed[20];     //接收完成字符串


void USART2_IRQHandler(void)
{
	u8 i;
	if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)
	{
		USART_ClearITPendingBit(USART2,USART_IT_RXNE);
		RxBuffer[RxCounter++] = USART_ReceiveData(USART2);     //每次接收一个字符
		RxOver = 0;
		if(RxBuffer[RxCounter-1]==0x0a)     //接受完一个字符串
		{
			RxOver = 1;        //接收完成
			RxLength = RxCounter-2;
			RxCounter = 0;
		}
		if(RxOver == 1)    //接受完一个字符
		{
			for(i=0;i<RxLength;i++)
			{
				RxBuffed[i] = RxBuffer[i];
			}
			for(i=RxLength;i<20;i++)
			{
				RxBuffed[i] = ' ';
			}
		}
	}
}