“N,8,1”没有问题,“E,8,1”不行,好像经常发生丢失中断的现象
“N,8,1”没有问题,“E,8,1”不行,好像经常发生丢失中断的现象。我调试了一下,发现
等待这部分的程序对丢失影响很大,大家看看,有何问题:
Start_Run:
; 判断Block是否已经接收完毕
Wait2:
CLR WDI ; feed the watchdog
CPL WDI
JBC OK.0,NPN ; 判断Block是否已经接收完毕
MOV A,0FH
JZ Wait2
; "Wait1"判断中断次数是否>14,是,则置位出错标志:Error_Byte.3
Wait1:
MOV A,0FH
CLR C
CJNE A,#0EH,CCC1
AJMP Wait2
CCC1:
JNC Over_Length ; 中断次数>14,协议错误
AJMP Wait2
Over_Length:
SETB Error_Byte.3
MOV 09H,#40H
AJMP Wait2
NPN:
发表时间:2003年1月14日18:03:00