单片机串口通讯问题!

#include<reg52.h>voidmain(){TMOD=0x20;TH1=0xfd;TL1=0xfd;TR1=1;SM0=0;SM1=1;EA=1;ES=1;R... #include<reg52.h>
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SM0=0;
SM1=1;
EA=1;
ES=1;
REN=1;
}
void ser() interrupt 4
{
RI=0;
P1=SBUF;
}
为啥只能接收一次啊?P1口接的是8个发光二极管!
展开
 我来答
aries00219
2012-07-13 · TA获得超过431个赞
知道小有建树答主
回答量:246
采纳率:0%
帮助的人:287万
展开全部
为什么没有死循环?
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SM0=0;
SM1=1;
EA=1;
ES=1;
REN=1;

while(1); //死循环等待 不然程序一下子就结束了 也就是说你只能执行一次
}

单片机的程序基本上都需要一个死循环来保证程序一直在运行
linshaoyi1977
2012-07-11 · TA获得超过313个赞
知道答主
回答量:121
采纳率:0%
帮助的人:107万
展开全部
好像不对.
更多追问追答
追问
哪里不对?
追答
波特率看是否有误.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rich556677
2012-07-11 · TA获得超过2028个赞
知道小有建树答主
回答量:1365
采纳率:0%
帮助的人:890万
展开全部
读取后要把接收缓冲清空,不然接收不了下一个。
追问
怎么清空啊?
追答
我也记不清了,就是寄存器,某一位置0,你查查资料。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式