[STM8] 关于STM8S003F的UART知识点

[复制链接]
2862|12
 楼主| xwh7010 发表于 2015-11-25 18:20 | 显示全部楼层 |阅读模式
发现UART的状态寄存器UART-SR的TXE为1时,根据手册上说的对数据寄存器UART-DR进行写操作会清零,但是我这样做发现不会清零,直接给UART-SR寄存器写0,也清不了。                                                               UART-SR的TC位手册上说先读UART-SR,然后写UART_DR寄存器会清零,但是我这样做也不会清零。但是可以通过直接给TC位写0 能清零。

请问大家有没有遇到类似的问题,请指教。
 楼主| xwh7010 发表于 2015-11-27 20:33 | 显示全部楼层
没有人复我?
szjlj168 发表于 2015-11-30 11:03 | 显示全部楼层
应该没有人遇到啦
457344370 发表于 2015-11-30 15:45 来自手机 | 显示全部楼层
是debug看的寄存器吗?可能是因为执行DR写后芯片就开始发送了,debug控制不能让串口停发,等你看的时候其实自己发送完成了。
457344370 发表于 2015-11-30 15:51 来自手机 | 显示全部楼层
可以试试这样LED=1,SR, DR=A5;while(TC==0)LED=0,LED=1这样测试,手机打字见谅
Thor9 发表于 2015-11-30 19:42 | 显示全部楼层
手机打字见谅

21IC网有手机端吗,楼上用的手机端吗
huahanshun 发表于 2015-11-30 19:55 | 显示全部楼层
顶一个
FireRiver9 发表于 2015-11-30 21:08 | 显示全部楼层
手册上关于TC位是怎么说的
 楼主| xwh7010 发表于 2015-12-1 10:54 | 显示全部楼层
457344370 发表于 2015-11-30 15:45
是debug看的寄存器吗?可能是因为执行DR写后芯片就开始发送了,debug控制不能让串口停发,等你看的时候其实 ...

是debug
 楼主| xwh7010 发表于 2015-12-1 10:55 | 显示全部楼层
457344370 发表于 2015-11-30 15:51
可以试试这样LED=1,SR, DR=A5;while(TC==0)LED=0,LED=1这样测试,手机打字见谅 ...

这方法不错
 楼主| xwh7010 发表于 2015-12-1 10:56 | 显示全部楼层

可以尝试下
desertsailor 发表于 2015-12-1 15:05 | 显示全部楼层
手册上写明了肯定没问题,你直接运行下看看
wojiademao 发表于 2015-12-1 16:26 | 显示全部楼层
往UART-DR后,估计数据被移位出去了,所以UART-DR又空 ,TXE=1 了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

51

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部