Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if NumberOfReadedChar < 100 then // maximum buffer overload check
- CommRead(ReadDelay and AllowReceive, PortNumber, 1, ReceiveBuffer);
- rtrgReceivedChar(CommRead.Count = 1);
- if rtrgReceivedChar.Q then // zachytenie a nacitanie 1 znaku
- ReceiveFinish := false;
- ReadBuffer[NumberOfReadedChar] := ReceiveBuffer[0];
- NumberOfReadedChar := NumberOfReadedChar + 1;
- ReadCompleteTimer(false, 0);
- end_if;
- end_if;
- // ak uz nepride znak do stanoveneho casu povazuje nacitany uffer sa povazuje za ukonceny
- if ReadCompleteTimer.Q and NumberOfReadedChar > 0 then
- allowReceive := false;
- if SETSTRING( ' ', OutCommReadBuffer ) then // vymazanie vystupneho buffera
- for i := 0 to NumberOfReadedChar do
- OutCommReadBuffer[i] := ReadBuffer[i];
- end_for;
- if SETSTRING( ' ', ReadBuffer ) then // vymazanie buffera
- ReceiveFinish := true;
- AllowReceive := true;
- ReadCompleteTimer(false, 0);
- NumberOfReadedChar := 0;
- end_if;
- end_if;
- else
- AllowReceive := true;
- end_if;
- rtrgReset(Reset);
- if rtrgReset.Q then
- ReceiveFinish := false;
- SETSTRING( ' ', OutCommReadBuffer );
- end_if;
Advertisement
Add Comment
Please, Sign In to add comment