USART_SendData(USART2, 0x31);
while(USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET );后进入中断,
中断程序如下面。
因为串口返回的是8组数据。但是调试时发现返回数据不是想要的数据。
void USART2_IRQHandler(void)
{ int i; //定义字符变量
if (USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) //判断发生接收中断
{ USART_ClearITPendingBit(USART2, USART_IT_RXNE); //清除中断标志
for( i=0;i<7;i++)
{
TxBuf1[i]=USART_ReceiveData(USART2); //接收数据
while(USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET);//等待发送结束
}
LCD_write_String(7,2,IntToStr(TxBuf1[4]));
}
应该如何修改?谢谢了