打印
[STM8]

STM8中UART查询方式接收的问题

[复制链接]
4474|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dadodo|  楼主 | 2010-8-5 16:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM8中UART查询方式接收遇到问题了。
函数如下:
unsigned char ReceivedChar(void)
{
  UART3_SR_RXNE = 0;  // STLINK调试时发现RXNE默认是1,手动清0
  while(!UART3_SR_RXNE);
  return UART3_DR;
}  

问题是:用STLINK调试时,UART3没有收到数据一直在while循环内。但不使用STLINK直接运行程序,while循环直接就过去了,这时串口并没有收到数据。
沙发
dadodo|  楼主 | 2010-8-5 17:57 | 只看该作者
继续跟踪后发现,while在执行若干次循环后自动退出。

使用特权

评论回复
板凳
dadodo|  楼主 | 2010-8-6 02:03 | 只看该作者
STLINK调试时发现怪事:
1、清零UART3_SR_RXNE后,即使UART3_DR中收到数据,RXNE也不会被硬件置位。
2、RXNE不手动清零,读取UART_DR后,RXNE也没有被硬件清零。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

1286

帖子

5

粉丝