STM32的USART发送数据时如何使用TXE和TC标志
来源:互联网 发布:大数据是什么专业 编辑:程序博客网 时间:2024/06/06 17:23
在USART的发送端有2个寄存器,一个是程序可以看到的USART_DR寄存器,另一个是程序看不到的移位寄存器,对应USART数据发送有两个标志,一个是TXE=发送数据寄存器空,另一个是TC=发送结束。
当USART_DR中的数据传送到移位寄存器后,TXE被设置,此时移位寄存器开始向TX信号线按位传输数据,但因为TDR已经变空,程序可以把下 一个要发送的字节(操作USART_DR)写入TDR中,而不必等到移位寄存器中所有位发送结束,所有位发送结束时(送出停止位后)硬件会设置TC标志。
另一方面,在刚刚初始化好USART还没有发送任何数据时,也会有TXE标志,因为这时发送数据寄存器是空的。TXEIE和TCIE的意义很简单,TXEIE允许在TXE标志为'1'时产生中断,而TCIE允许在TC标志为'1'时产生中断。
至于什么时候使用哪个标志,需要根据你的需要自己决定。但我认为TXE允许程序有更充裕的时间填写TDR寄存器,保证发送的数据流不间断。TC可以让程序知道发送结束的确切时间,有利于程序控制外部数据流的时序。
TXE--写寄存器DR清零
RXNE--读寄存器DR清零,也可软件手动清零
TC-- 读/写寄存器DR清零,也可软件手动清零
0 0
- 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标志(认识1)
- STM32的USART发送数据时如何使用TXE和TC标志
- 32的USART发送数据时如何使用TXE和TC标志
- STM32 USART发送标志 TXE&TC
- USART里面TXE和TC的用法
- STM32实现USART+DMA接收未知长度的数据和发送
- STM32 USART的使用
- 单片机UART中断应用中TXE和TC的顺序
- STM32 USART 串口 DMA 接收和发送的源码详解!
- 2017网易实习生编程题
- top命令参数详解
- JQuery -AJAX- html中提交表单并实现不跳转页面处理返回值
- java 小游戏
- 第一篇 博客 无关于代码
- STM32的USART发送数据时如何使用TXE和TC标志
- C++实验4:项目六 百钱买百鸡
- Failed to load JavaHL Library的解决办法
- Python正则
- Using neural nets to recognize handwritten digits
- 禁止开头输入空格
- Go语言的三个雷区
- log4j.properties配置文件
- MySQL数据库锁介绍