Witam,
Mam taki problem że, transmisja po RS'ie mi spowalnia po przekroczeniu ok 5tysiecznej rami danych. Kolejna ramka wysyła się z opóźnieniem kilku sekundowym i czas się zwiększa. Co się dzieje?
Ideowo ma wyglądać następująco:
Wysyłam z RS'a 128bajtów do urządzenia ono potwierdza 4 bajtami a ja na to wysyłam kolejne 128bajtów aż do wysłania całego pliku.
(Do testów wysyłam 10 bajtów)
for i:=1 to 1000000 do
begin
bResult:=FALSE;
repeat
for j:=0 to 9 do
begin
Buffer_O[j]:=#122;
Buffer_I[j]:=#0;
end;
repeat
FlushFileBuffers(hCommDev);
until (Write_Comm(hCommDev, Buffer_O, SizeOf(Buffer_O)) <> FALSE);
repeat
until Form1.Read_Comm(hCommDev, SizeOf(Buffer_I)) = TRUE;
if (Buffer_I[0]=Char(49)) and (Buffer_I[1]=Char(50)) and(Buffer_I[2]=Char(51)) and
(Buffer_I[3]=Char(52)) then bResult:=TRUE;
until BResult = TRUE;
end;