Hallo Hathor,
die 3,5 Sek gelten aber nur bei RTU, nicht bei seriell, oder?
Delphi-Quellcode:
if (lMessage.FTransmissionMode = mbtmRTU) then // Pause machen
begin
lcSendTicks := GetTickCount + (44000 div ACPD.BaudRateValue) + 1; // 4 Zeichen, aber mindestens 1/1000 sec
// *1000 => Millisekunden
// *11 => Länge eines Bytes in Bit (Start + 8 + Parity + Stop)
while (GetTickCount < lcSendTicks) do
begin
Application.ProcessMessages; // auf die Antwort im SeriellThread warten
end;
end;
RTU liefert manchmal schlechte Sendungen, das hängt vllt mit dem Messgerät zusammen.
Bei der seriellen Variante bekomme ich bessere Ergebnisse, aber eben nicht sehr flott.