OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3604|回复: 1

STM32F207 TXE 和 TC不会自动清0

[复制链接]

4

主题

5

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2014-12-24
在线时间
1 小时
发表于 2014-12-29 11:06:11 | 显示全部楼层 |阅读模式
经过一段时间的调试,我发现数据手册中的一些描述和实际情况是不同的,在此和大家分享一下;针对SR寄存器中的TXE位和TC位,数据手册中的描述如下:

Bit 7TXE: Transmit data register empty
This bit is set by hardware when the content of the TDR register has been transferred into 
the shift register. An interrupt is generated if the TXEIE bit =1 in the USART_CR1 register. It 
is cleared by a write to the USART_DR register.
0: Data is not transferred to the shift register
1: Data is transferred to the shift register)
Note: This bit is used during single buffer transmission.
Bit 6TC: Transmission complete
This bit is set by hardware if the transmission of a frame containing data is complete and if 
TXE is set. An interrupt is generated if TCIE=1in the USART_CR1 register. It is cleared by 
a software sequence (a read from the USART_SR register followed by a write to the 
USART_DR register). The TC bit can also be cleared by writing a '0' to it. This clearing 
sequence is recommended only for multibuffer communication.
0: Transmission is not complete
1: Transmission is complete

大家调试的时候会发现,一开始TC和TXE位就一直是1的,只要相应的位TCIE和TXEIE位是1 ,就可以产生相应的中断,黄色部分的描述是
这两位是可以通过上述软件操作清0的,但是事实上,TC和TXE是不能通过黄色字部分的操作清0,如果不手动清0,他们将一直是1,



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-12-30 00:00:47 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-27 11:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表