一个关于串口的问题~

2019-07-21 04:56发布

串口发送数据时要检测发送完成标志TC,没有while((USART1->SR&0X40)==0); 会造成DR的溢出,但我看到的大部分代码都只是检测TC是否置1,没有TC的清零动作是为什么,不清零不会造成什么影响吗?
USART_SendData(USART1,0x1A);
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
USART_SendData(USART1,0x1A);
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
USART_SendData(USART1,0x1A);
while((USART1->SR&0X40)==0);
USART_SendData(USART1,0x1A);
while((USART1->SR&0X40)==0);

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。