#include <reg52.h>
unsigned char flag,a,p,temp;
void init();
void main()
{
flag=0;
init();
while(1)
{
if(flag==1)
{
flag=0;
SBUF=p;
while(!TI);
TI=0;
ES=1; //這句去掉,一個字節都收不到了
}
}
}
void dd() interrupt 4
{
RI=0;
p=SBUF;
flag=1;
}
void init()
{
TMOD=0x20;
TH1=0xf4;
TL1=0xf4;
TR1=1;
REN=1;
SM0=0;
SM1=1;
EA=1;
ES=1;
}
只是把上面的ES=0去掉了,燒錄完,打開調試助手的“打開串口”,我沒點發送,嘩啦啦,FFFF就出現了,不斷在接收。 |