TC全称Transmission Complete,即发送结束
TXE全称Tx DR Empty,即发送寄存器空
在USART的发送端有2个寄存器
USART_DR寄存器,对应中断标志是USART_IT_TXE
只要USART_IT_TXE==1,就可以往USART_DR内传数据。
当USART_DR中的全部数据传送到移位寄存器后,此时USART_DR为空,USART_IT_TXE被设置为1,此时程序可以把下一个要发送的字节(操作USART_DR)可以写入USART_DR中。
移位寄存器,对应中断标志是USART_IT_TC
只要USART_IT_TC==1,就可以往USART_DR内传数据。
当移位寄存器中的全部数据移出后,此时移位寄存器为空,USART_IT_TC被设置为1,此时程序可以把下一个要发送的字节(操作USART_DR)可以写入USART_DR中。
USART_IT_TC是移位寄存器把数据传输完后置1有效,只要把USART_IT_TC标志位置0就不再会进入中断
USART_IT_TXE是USART_DR寄存器为空就置1从而开启中断,所以一开始USART_DR寄存器没有数据时也会进入一下中断,因为只要寄存器空就进入中断所以USART_IT_TXE需要的是直接关掉中断,USART_ITConfig(USART1, USART_IT_TXE, DISABLE);
相关资料:https://blog.csdn.net/weibo1230123/article/details/80216081
网友评论