初学单片机,如何能够通过串口调试助手发送数据点亮LED灯,在网上找的程序如下,但是一把程序烧进去,灯就亮了,搞不懂,希望高手帮忙指点迷津!感激不尽!
#include <reg52.h>
#include <intrins.h>
unsigned char tmp;
sbit led1=P2^0;
sbit led2=P2^3;
main()
{
TMOD = 0x20; // 定时器1工作于8位自动重载模式, 用于产生波特率
TH1=TL1=0xFD; // 波特率9600
SCON = 0x50; // 设定串行口工作方式1 允许接收,相当于下面三句
//SM0=0;
//SM1=1;
//REN=1;
PCON =0x00; // 波特率不倍增
TR1 = 1;
led1=1;led2=1;
while(1)
{
if(RI==1) // 是否有数据到来
{
RI = 0;
tmp = SBUF; // 暂存接收到的数据
if(tmp==1)//如果数据为1
led1=0;
else if(tmp==2)//如果数据为2
led1=0;
else {led1=0;led2=0;}
}
}
}
|