Hallo Leute, ich versuche verzweifelt mit dem Modul synaser die Daten der USB-Schnittstelle auszulesen und umzuwandeln. Soweit klappt alles, also die Kommunikation. Aber irgendwie doch nicht. Per Timer wollte jedes Byte einzeln auslesen und den Hex-Wert davon dann in einen String und diesen dann mit einem Memo anzeigen. Aber ich scheitere schon beim auslesen. Timer hat Intervall von 100 procedure TForm1.Timer1Timer(Sender: TObject); begin txt:=ser.RecvPacket(100);(Daten Byteweise lesen, 100 ms Wartezeit ) label1.caption:=txt; Memo1.lines.add(inttostr(length(txt))); end; aber obwohl ich byteweise auslese, hat der String txt eine Länge zwischen 80-100 Zeichen. Das kann doch irgendwie nicht sein, oder? also muß ja "txt:=ser.RecvPacket(100); " mehrfach aufgerufen werden und Label1.Caption und Memo1.line=länge vom String je nur einmal.........sollte ich es so lassen und einfach den String auswerten und umformatieren? Oder gibt es da noch eine bessere Möglichkeit für das Byte-Weise einlesen? Vielen Dank.
Hallo Manfred, byte für byte müsste so gehen. function RecvByte(timeout: integer): byte; virtual; Waits until one data byte is received which is returned as the function result. If no data is received within the Timeout (in milliseconds) period, LastError is set to ErrTimeout. ms
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.