51单片机串口中断程序问题,目的:在串口输入12点亮一盏灯.但是无法实现,请问我的程序哪里错了?

#include<reg51.h>sbitled=P2^2;voidmain(){SCON=0X50;TMOD=0X20;PCON=0X80;TH1=0XF3;TL1=0... #include<reg51.h>
sbit led=P2^2;
void main()
{
SCON=0X50;
TMOD=0X20;
PCON=0X80;
TH1=0XF3;
TL1=0XF3;
ES=1;
EA=1;
TR1=1;

P2=0x00;
while(1) {

}
}

void Usart() interrupt 4
{
unsigned char a;

a=SBUF;
RI = 0;
SBUF=a;
if(a==12){
led=1;
}
while(!TI);
TI=0;
}
展开
 我来答
zhxiufan
2016-05-18 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38387
国家科技进步奖

向TA提问 私信TA
展开全部
#include<reg51.h>
sbit led=P2^2;
void main()
{
SCON=0X50;
TMOD=0X20;
PCON=0X80;
TH1=0XF3;
TL1=0XF3;
ES=1;
EA=1;
TR1=1;
P2=0x00;
while(1) ;
}

void Usart() interrupt 4
{
unsigned char a;
ES=0;
if(RI)
{
a=SBUF;
RI = 0;
if(a==12){
led=1;
}
SBUF=a;
while(!TI);
TI=0;
}
ES=1;
}
更多追问追答
追问
恩会了,如果我要在串口输入一个具体时间如12时00分00秒,到那个时间点亮灯该怎么设计
追答
定义一个数组,接收数据后比较就可以了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式