打印

串口问题

[复制链接]
1273|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dfsa|  楼主 | 2013-3-30 23:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在使用stm32的时候,写了一段程序如下
          if(((USART1->DR & 0x01FF)==0x0008))
{
   printf("\n\r接受成功\n");
   USART1->DR&=0x00000000;
}
else
{
printf("\n\r接受失败\n");

    }

Delay(0x2FFFFF);

我要的结果是,当通过串口发一个0x08后,显示接受成功,然后,DR值被改变,接着显示接受失败
但是实际上,当通过串口发一个0x08后,一直显示接受成功,不会显示显示接受失败
求解释,同时,如何实现“当通过串口发一个0x08后,显示接受成功,然后,DR值被改变,接着显示接受失败”这个功能
沙发
txcy| | 2013-3-30 23:23 | 只看该作者
有可能你串口接收数据完后没清中断,导致第2次接收数据有问题

使用特权

评论回复
板凳
gxgclg| | 2013-3-30 23:33 | 只看该作者
建议找个例程看看

使用特权

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

本版积分规则

282

主题

2404

帖子

2

粉丝