|
#include <reg52.h>
#include <intrins.h>
typedef unsigned int u16;
typedef unsigned char u8;
#define led P2
void csh()
{
TMOD = 0x20; //用來(lái)定時(shí)器設(shè)置
TH1 = 0xfd; //給初值
TL1 = 0xfd;
TR1 = 1; //定時(shí)器1開(kāi)啟
SCON = 0x50; //設(shè)置串行口工作方式1,允許串行接收位
EA = 1; //開(kāi)啟總中斷
IT0 = 1; //外部0中斷的中斷方式為:下降沿中斷
ES = 1; //開(kāi)串口中斷
PCON = 0x00; //波特率不加倍
RI = 0; //RI清零
}
void display() interrupt 4
{
u8 receive;
receive=SBUF;
RI=0;
switch(receive)
{
case('x'):while(1)
{
led=0x00;
};break;
case('s'):led=0x01;break;
case('b'):led=0x02;break;
case('c'):led=0x04;break;
case('d'):led=0x08;break;
}
}
void main()
{
while(1)
{
csh();
}
}
|
|