为什么
void put(void) //发送采用查询方式{
char p;
ru=0xaa;
setd_2();
for(p=0;p<8;p++)
{
while(!(UCSRA & (1<<UDRE)));
UDR=ru;
delay2();
}
ru=0x55;
for(p=0;p<8;p++)
{
while(!(UCSRA & (1<<UDRE)));
UDR=ru;
delay2();
}
clrd_2();
}
发8个aa,只发6个55? delay2();是多余的。不知道你用的什么单片机,检查while条件有没有写反,循环发55,用示波器测波特率 用m16
页:
[1]