STM32串口中断为何总接收最后一个字节
char * recpointer;
static u8 flag=0;
void USART1_IRQHandler()
{
if (flag==0)
{
flag =1;
recpointer =Rec_Buffer;
Rec_BufferClear (0,1024);
}
if(flag ==1)
{
if(USART_GetFlagStatus(USART1,USART_FLAG_RXNE)==RESET)
{
*recpointer= USART_ReceiveData(USART1);
//while(USART_GetFlagStatus(USART1,USART_FLAG_RXNE)==RESET )
recpointer ++;
}
else if(USART_GetFlagStatus(USART1,USART_FLAG_IDLE)==RESET)
{
recpointer =Rec_Buffer;
USART1->SR;//
USART1->DR;//
}
}
}