Prüfen, ob Gerät an serieller Schnittstelle angeschlossen

Hardware- und Elektronikbasteleien, Ansteuerung von Schnittstellen und Peripherie.
Fragen zu "Consumer"-Problemen kommen in Offtopic.
Andi
Beiträge: 73
Registriert: 27.05.2008 17:29
Wohnort: Berlin

Prüfen, ob Gerät an serieller Schnittstelle angeschlossen

Beitrag von Andi »

Hallo! Ich habe einen Olympus-Fußschalter an meine serielle Schnittstelle angeschlossen - die Steuerung funktioniert mit dem von mir geschriebenen Programm einwandfrei. Wenn ich den Fußschalter allerdings nicht angeschlossen habe, gibt es Probleme. Gibt es eine Möglichkeit abzufragen, ob an einer seriellen Schnittstelle ein Gerät angeschlossen ist, sodass ich eine entsprechende Abfrage in mein Programm einbauen kann?
PB + B4X = greatest tools on earth
Win 10 | PB 5.72
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46
Wohnort: Luxemburg
Kontaktdaten:

Beitrag von hardfalcon »

Für dem normalen COM-Port gibt es das meines Wissens nicht (weil der COM-Port, anders als z.B. USB, ja nie für Hot-Plugging konzipiert wurde).
„Warum siehst du den Splitter im Auge deines Bruders, aber den dicken fetten schwarzen Zensurbalken vor deinem Auge bemerkst du nicht?“
Benutzeravatar
Thorium
Beiträge: 1722
Registriert: 12.06.2005 11:15
Wohnort: Germany
Kontaktdaten:

Beitrag von Thorium »

Vieleicht hilfts dir ja weiter:
Ich hatte früher mal mit Turbo Basic einen Chat programmiert der übers Nullmodem Kabel über die serielle Schnittstelle lief. Das interessante daran war, das wenn ich was an der Schnittstelle angeschlossen hatte, z.b. ne Maus, immer ein Echo zurückkam.
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.

Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke! Bild
Andi
Beiträge: 73
Registriert: 27.05.2008 17:29
Wohnort: Berlin

Beitrag von Andi »

Danke, Thorium, für Deine Antworten. Ich weiß jetzt nicht, wie ich das Echo detektieren kann, aber ich habe festgestellt, dass im Fall, dass der Fußschalter nicht angeschlossen ist, der RI, DCD, DSR und CTS-Signal-Status false ist. Wenn der Fußschalter angeschlossen ist, springen DCD, DSR und CTS auf true.
PB + B4X = greatest tools on earth
Win 10 | PB 5.72
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

Die einzige Möglichkeit, die mir jetzt dazu ein fällt, so wird es bei vielen Geräten gemacht, ist eine Statusabfrage. Man schickt einen Befehl (zB: Status oder Version - ist Geräteabhängig) und man wertet die die Rückantwort aus. Kommt eine, oder ist diese korrekt, ist das Gerät angeschlossen... ^^
Eine Art Query-Planner soll die Ausführung von Map/Reduce-Funktionen in Hadoop stark beschleunigen.
Keepdry
Beiträge: 11
Registriert: 31.03.2005 23:32
Wohnort: Freistatt

Beitrag von Keepdry »

Auch bei der Statusabfrage kann es sein das anschliessend die Schnittstelle hängt.
Es ist aber ungewöhnlich das die Hardware Handshake auf hi liegen.
Bei Maschinen die als reine Slave arbeiten werden die Handshake´s oft über Brücken künstlich auf hi gesetzt. Beispiel Brücke :

Host----------------Slave
RTS ->
         |----------->DCD
CTS<-
RTS wird nach Com Init. Hi und bedient gleich auch CTS und setzt DCD (Receive line signal detector) hi. Die gleiche Brücke ist auch beim Slave.
Sprich, dem Slave sein DCD ist nur hi wenn ein Host angeschlossen ist.
Also Com initialisieren, DCD Abfragen, ist DCD low = nix angeschlossen, Com wieder schliessen, FM ausgeben. Ist DCD hi = mach das was du willst. Wenn du anschliessend auch noch Hardware Handshake machen willst musst du diesen über DTR, DSR bedienen.
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

Wenn man mit Master und Slave arbeitet, wird in der Regel RS 485 genutzt... In der Regel ist eine Adressierung für die Commandos vorgesehn.
Eine Art Query-Planner soll die Ausführung von Map/Reduce-Funktionen in Hadoop stark beschleunigen.
Keepdry
Beiträge: 11
Registriert: 31.03.2005 23:32
Wohnort: Freistatt

Beitrag von Keepdry »

Richtig....
Es wird aber auch über die RS232 als Master Slave kommuniziert. In der Medizintechnik weit verbreitet, Druckmessgeräte, Barcodescanner und einige Sensoren arbeiten so. Mein täglich Brot. :wink:
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

Über RS232 ist keine Kommunikation mit mehreren Geräten als Master und Slave möglich, zumindest hab ich das irgendwo mal gelesen, find's jetzt aber nicht mehr.
Eine Art Query-Planner soll die Ausführung von Map/Reduce-Funktionen in Hadoop stark beschleunigen.
maupa
Beiträge: 93
Registriert: 12.12.2004 12:17

Beitrag von maupa »

rs485 offenes master/slave-protokoll

bei rs232 sind maximal 1 master und 1 slave möglich
Antworten