32的USART发送数据时如何使用TXE和TC标志
2014-04-17 16:10
531 查看
32的USART发送数据时如何使用TXE和TC标志 |
对应USART数据发送有两个标志,一个是TXE=发送数据寄存器空,另一个是TC=发送结束;对照下图,当TDR中的数据传送到移位寄存器后,TXE被设置,此时移位寄存器开始向TX信号线按位传输数据,但因为TDR已经变空,程序可以把下一个要发送的字节(操作USART_DR)写入TDR中,而不必等到移位寄存器中所有位发送结束,所有位发送结束时(送出停止位后)硬件会设置TC标志。
另一方面,在刚刚初始化好USART还没有发送任何数据时,也会有TXE标志,因为这时发送数据寄存器是空的。
TXEIE和TCIE的意义很简单,TXEIE允许在TXE标志为'1'时产生中断,而TCIE允许在TC标志为'1'时产生中断。
至于什么时候使用哪个标志,需要根据你的需要自己决定。但我认为TXE允许程序有更充裕的时间填写TDR寄存器,保证发送的数据流不间断。TC可以让程序知道发送结束的确切时间,有利于程序控制外部数据流的时序
相关文章推荐
- STM32的USART发送数据时如何使用TXE和TC标志(认识1)
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- 20130408-[转]STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32的USART发送数据时如何使用TXE和TC标志
- STM32 USART发送标志 TXE&TC
- 如何通过使用 VisualC # .NET /VB.NET 向打印机发送数据/控制命令
- python下如何使用requests发送multi-part类型的数据
- 如何使用TCP向远端SERVER传输数据 (发送与接收)
- 如何使用JRtpLib3.5.0库中的函数和类对象和让JRTPLIB 发送/接收数据时使用同一个端口收藏
- wifi模块简单使用教程,如何将数据发送到电脑(esp8266 arduino库的使用)
- 如何使用Arduino和SIM900A GPRS / GSM模块将数据发送到Web服务器
- 基于STM32CT117E竞赛板(STM32f103RB) 使用USART串口发送数据
- 教你如何使用stm32发送一帧数据(结构体中的数据)
- 如何通过使用 Visual C#.net 将原始数据发送到打印机