Hallo, ich programmiere seit einer Woche an einem Programm das mit einem Gerät, das an meine COM1 Schnittstelle angeschlossen ist, kommunizieren soll. Ich habe eine Schleife eingebaut, damit der Befehl öfter abgerufen wird, da ich dies benötige. Leider kommen nicht immer richtige Antworten zurück. Ich habe in einem andern, schon 3 Jahre alten Forenbeitrag gelesen das es etwas mit dem Handshake zu tun haben könnte. Leider versteh ich die Angaben für mein Gerät nicht ganz. Ich hoffe mir kann hier jemand helfen. Es sind folgende Angaben zum Handshake gemacht: CTS Clear to send CD RSSI-threshold RTS Ignored Ich bin für jede Hilfe dankbar
Was heisst denn "nicht richtige Antwort"? Was wird erwartet und was kommt stattdessen?
Smilie schrieb: > Es sind folgende Angaben zum Handshake gemacht: > CTS Clear to send Das könnte die entscheidende Leitung sein. Deine Gegenstelle signalisiert auf dieser Leitung, ob sie bereit ist, Daten von dir entgegen zu nehmen.
Zu MeinerEiner: Ich senden den Befehl der die Frequenz des Gerätes anfordert. Zurück kommt beispielsweise ?NNNNNNN??NMHz oder ?85.12345MHz. zu Karl heinz Buchegger (kbuchegg) (Moderator) Aber welcher Einstellung entspricht das in VB. Die Einstellungen, die zur Auswahl stehen sind: None XOnXOff Requesttosend RequesttosendXOnXOff Die letzen beiden kann man ja eigentlich ausschließen weil das Gerät ja RTS also Request to send nicht unterstützt. Hat mir mein Kollege gesagt. Aber die andern beiden zeigen auch keinen Unterschied.
Smilie schrieb: > Die letzen beiden kann man ja eigentlich ausschließen weil das Gerät ja > RTS also Request to send nicht unterstützt. Hat mir mein Kollege gesagt. RTS ist auch egal. Ist zwar ungewöhnlich, aber warum nicht. Wichtig ist, ob dir das Gerät über die CTS signalisiert, ob du Senden darfst. Und ein Kollege ist keine gute Quelle. Das Datenblatt des Gerätes wäre besser. Wenn dein Problem etwas mit Handshake zu tun hat, dann ist es im Datenblatt dokumentiert.
Also zu Handshake steht da nur das hier: CTS Clear to send CD RSSI-threshold RTS Ignored Ich hab da was entdeckt das heißt CTSHolding. Wenn ich das abfrage kommt False zurück. Bedeutet das, dass CTS nicht aktiv ist? Wenn ja wie schalte ich das ein? Und kann ich das überhaupt einschalten?
Smilie schrieb: > Also zu Handshake steht da nur das hier: > CTS Clear to send CD RSSI-threshold RTS Ignored > > Ich hab da was entdeckt das heißt CTSHolding. Wenn ich das abfrage kommt > False zurück. Bedeutet das, dass CTS nicht aktiv ist? Woher soll ich das wissen? (Wo hast du das entdeckt?) > Wenn ja wie > schalte ich das ein? Und kann ich das überhaupt einschalten? Du wahrscheinlich gar nicht. Das klingt eher nach einer Abfrage, ob zur Zeit CTS aktiv ist oder nicht. Aber machs nicht so kompliziert. Früher hat man sich mit ein paar Leds beholfen. Das kannst du auch. Mach einen Stecker deines Kabels auf und klemme eine LED (samt 300 Ohm vorwiderstand) an die CTS Leitung auf PC Seite. Wenn die Led brennt, drehst du sie um (bzw. umgekehrt: wenn sie nicht brennt, dann drehst du sie probehalber um um zu sehen ob sie funktioniert und baust sie in Nicht-erleuchtetet Richtung ein. Und dann lässt du dein Programm werken. Wenn die LED ab und zu aufblitzt, dann versucht das Gerät deinem Programm ein CTS zukommen zu lassen. Früher hatte man dafür eigene RS232-Zwischenstecker, bei denen Rx, Tx, CTS, RTS über je eine LED visualisiert wurden. Ungemein praktisch, um zu sehen ob und wenn ja was sich auf der Leitung tut.
Das CTSHolding hab ich beim durchgehen der Methoden und Eigenschaften von der Klasse SerialPorts entdeckt. Habs mal einfach eingegeben in der Hoffung es könnte helfen. Ok danke ich versuchs mal.
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.