【WCH蓝牙系列芯片】-基于CH32V208开发板—串口USART_FLAG_TXE & USART_FLAG_TC

-------------------------------------------------------------------------------------------------------------------------------------

USART 模块支持多种中断源,这里说明一下USART_FLAG_TXE和USART_FLAG_TC对应的关系。

USART_FLAG_TXE--------------发送数据寄存器空
表示数据缓冲区是否为空,为空时置1,表示可以写数据到数据缓冲区,有可能数据没有发送完

 

USART_FLAG_TC---------------数据发送完成(TC)
表示数据缓冲区的数据发送是否完成。
如果最后一次发送到数据缓冲区的数据完成了,从移位寄存器到信号线TX时,才置1,表示数据发送完成,等同于,这个标志位真正表示数据发送完成。

 

  清除TC需要:
  1. 读SR寄存器 & 写DR寄存器;
  2. 直接给TC赋值0;

 

posted on 2023-11-14 16:59  凡仕  阅读(78)  评论(0编辑  收藏  举报