#include<reg52.h>
#define uchar unsigned char
//#define uint unsigned int
uchar flag,a,b,i;
uchar code table[]="I get ";
void main()
{
TMOD=0x20;//設置定時器1為工作方式2
TH1=0xfd;
TL1=0xfd;
TR1=1;
REN=1;
SM0=0;
SM1=1;
EA=1;
ES=1;
while(1)
{
if(flag==1) //如果有數據則進入這個語句
{
ES=0; //進入發送數據時先關閉串行中斷
for(i=0;i<6;i++)
{
SBUF=table[i];
while(!TI)
TI=0;
}
SBUF=a; //將數據原樣發回
while(!TI); //等待數據發完
TI=0; //關閉發送中斷
ES=1; //退出前再打開串行中斷
flag=0;
}
}
}
void ser() interrupt 4
{
RI=0;
// P1=SBUF;
a=SBUF;
flag=1;
}
感謝,已調試通過。 |