ребят подскажите если кто знает почему при считывании с ком порта иногда теряются 2 байта. я считываю информацию по кадрам в каждом кадре 64 байта так вот иногда при чем не важно в какой момент при считывании происходит потеря 2 байтов после чего кадр стает некоректным
Код:
function TDComPort.ReadB: Byte;
Var
Data: Byte;
Size, RSize: DWORD;
begin
// Будет возвращён в случае ошибки
Result:=0;
Size:=1;
If Not ReadFile(PoortID, Data, Size, RSize, nil) Then
Begin
MainForm.LogError('Ошибка: Вызов ReadFile не удался');
Error:=True;
Exit;
End;
If RSize <> 1 Then
Begin
MainForm.LogError('Ошибка: Не удалось прочитать байт');
Error:=True;
Exit;
End;
Error:=False;
Result:=Data;
end;