//程序功能,首先在电脑上发一个数据给单片机,单片机收到后//在把这个数据发送给电脑#includereg52.hunsignedchara,flag;voidmain(){TMOD=0X20;//设置定时器1为工作方式2TH1=0xfd;//9600波特率TL1=0xfd;TR1=1;//启动定时器1SM0=0;SM1=1;//设置为方式1REN=1;//接收使能EA=1;//打开总中断ES=1;//打开串口中断while(1){if(flag==1){ES=0;//给电脑发送数据,发送的时候不能让其中断,关闭中断,flag=0;//清0否则一直往电脑上发SBUF=a;while(!TI)//等待数据发送结束TI=0;//产生中断后要软件清0ES=1;//打开串口中断}}}voidserial()interrupt4{a=SBUF;P1=a;RI=0;//软件清0,可以退出中断flag=1;}