51单片机无法读取SBUF

串口程序如图。在用keiluvision4进行调试时,已经设置SBUF接收到的值为0x55,但是执行完语句byte=SBUF后,byte的值却是0x00。为什么呢?... 串口程序如图。
在用keil uvision4进行调试时,已经设置SBUF接收到的值为0x55,但是执行完语句byte=SBUF后,byte的值却是0x00。为什么呢?
展开
 我来答
zxlzql2009
2013-03-20 · TA获得超过234个赞
知道小有建树答主
回答量:293
采纳率:0%
帮助的人:292万
展开全部
你把byte设置成为全局变量试一下,跳出中断后,临时变量就会被释放,所以没有值,如果SBUF里面有值是不会读不出来的,你仿真调试中断点在哪里?
匿名用户
2013-03-20
展开全部
试试用 while(!RI); //即进入中断就阻塞,直到有收到数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
z438937928
2013-05-06 · 超过12用户采纳过TA的回答
知道答主
回答量:73
采纳率:0%
帮助的人:37.6万
展开全部
我也遇到了这个问题...定义成了全局变量也不行 你要是找到了答案能告诉我一下吗 就评论到这个回答后就好 谢谢啦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式