void timer0_init()
{
TMOD=0x20;
SCON=0x50;
PCON&=0x00;
TH1=0xFD;
TL1=0xFD;
TR1=1;
EA=1;
ES=1;
}
void serial(void) interrupt 4
{
IF (RI)
{
BUFF(N)=SBUF;
N++;
RI=0;
}
}
晶振11.0592
PC调试助手或单片机发送00 02 04 06 08的数据,接收是00 04 08 02 06
如果发送 00 00 02 02 04 04 06 06 08 08 接收的是00 02 04 06 08
是不是丢包了?哪里出问题了?
用调试助手改为手动逐个输入00 02 04 06 08 接收数据依然是00 04 08 02 06
这样看来和输入的速度是没关系的,看来是缓存里的数据没被取走,直到下一个数据
覆盖后才取走,结果显示的是下一个数据。
|