![]() |
Strings über ComPort senden
Guten Morgen,
ich habe ein kleines Verständnisproblem. Ich sende Strings über die Comschnittstelle an einen Barcodescanner. Geb ich die Strings von Hand in ein Eiditfeld ein und sende sie nacheinander gibt es kein Problem. Sobald ich die Strings mittels Button nacheinander senden will, wird nur der erste String quittiert, mit Pause dazwischen auch noch der zweite, der dritte wird dann aber nicht mehr gesendet.
Delphi-Quellcode:
procedure TForm1.btnSendStringClick(Sender: TObject);
var a,b,c,SendStr: string; begin a:= '$+$*' + #$0D#$0A; //Restore Default b:= '$+CP0$-' + #$0D#$0A; // Set RS232 c:= '$+AC110155$-' + #$0D#$0A; //Set Codetype SendStr := a; //Restore Default SerialPort.SendString(SendStr); sleep(10000); Sendstr := b; // Set RS232 SerialPort.SendString(SendStr); sleep(10000); Sendstr := c; //Set Codetype SerialPort.SendString(SendStr); end; Muss ich noch etwas beachten? Vielen Dank Schubi |
Re: Strings über ComPort senden
wahrscheinlich wird dir der bardcodescanner nach jedem befhel eine antwort schicken, diese würde ich abwarten (einfach einlesen) und dann den nächsten schicken.
wenn du einfach wild drauf losschickst, dauerts erstens viel länger, da du jedesmal große pausen einlegen mußt, und diese pausen wahrscheinlich auch immer abhängig vom befehel davor sind, wielange diese zum ausführen brauchen |
Re: Strings über ComPort senden
Hallo Hans,
vielen Dank. Der Scanner quittiert den Befehl mit einem doppelten Piepston sendet aber nix zurück. Viele Grüße Schubi |
Re: Strings über ComPort senden
So gelöst.
Der Befehl "Set RS232" war überflüssig, da ich ich ja von Anfang an schon über die RS232 kommuniziert habe. Sorry, Denkfehler. Gruß Schubi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz