



16楼
#include <reg51.h>
#define uchar unsigned char
#define uint unsigne int
uchar flag,a,i;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SM0=0;
SM1=1;
REN=1;
EA=1;
ES=1;
while(1)
{
if(flag==1)
{
flag=0;
ES=0;
SBUF=a;
while(!TI);
TI=0;
ES=1;
}
}
}
void ser() interrupt 4
{
RI=0;
P1=SBUF;
a=SBUF;
flag=1;
}
中间加上flag=0,再换上11.0592M的晶振就可以了(一开始用的是12M晶振)
#define uchar unsigned char
#define uint unsigne int
uchar flag,a,i;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SM0=0;
SM1=1;
REN=1;
EA=1;
ES=1;
while(1)
{
if(flag==1)
{
flag=0;
ES=0;
SBUF=a;
while(!TI);
TI=0;
ES=1;
}
}
}
void ser() interrupt 4
{
RI=0;
P1=SBUF;
a=SBUF;
flag=1;
}
中间加上flag=0,再换上11.0592M的晶振就可以了(一开始用的是12M晶振)


18楼
不知道怎么回事,还是不好使,还是没有高低波形,夹在tx和rx上就变成高了,发送55的时候(小夹子夹得是开发板上的GND)
