STC89C52RC串口通讯
我想通过电脑控制单片机用的是11.0592M晶振,STC89C52RC,上位机需要通过发送“1”,“2”的指令来控制一盏P2.0口LED二极管,代码如下,为什么我用串口助...
我想通过电脑控制单片机用的是11.0592M晶振,STC89C52RC,上位机需要通过发送“1”,“2”的指令来控制一盏P2.0口LED二极管,代码如下,为什么我用串口助手输入1和2无任何反应?
#include<reg52.h>
unsigned char flag,a,ii;
sbit led=P1^0;
void ser() interrupt 4
{
RI=0;
if(SBUF==0x31) //如果收到的数据为字符'1'则发送一次字符串
led=0;
else if(SBUF==0x32)
led=1;
}
void main()
{
TMOD=0x20;//设置定时器1为工作方式2自动重装的8位计数器
TH1=0xfd; //波特率为9600
TL1=0xfd;
TR1=1; //启动定时器1
REN=1; //允许接收
SM0=0;
SM1=1; //设置工作方式1
EA=1;//总中断允许
ES=1; //串口中断允许
while(1);
}
哦,那个sbit led=P2^0;但是还是不行 展开
#include<reg52.h>
unsigned char flag,a,ii;
sbit led=P1^0;
void ser() interrupt 4
{
RI=0;
if(SBUF==0x31) //如果收到的数据为字符'1'则发送一次字符串
led=0;
else if(SBUF==0x32)
led=1;
}
void main()
{
TMOD=0x20;//设置定时器1为工作方式2自动重装的8位计数器
TH1=0xfd; //波特率为9600
TL1=0xfd;
TR1=1; //启动定时器1
REN=1; //允许接收
SM0=0;
SM1=1; //设置工作方式1
EA=1;//总中断允许
ES=1; //串口中断允许
while(1);
}
哦,那个sbit led=P2^0;但是还是不行 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询