On Monday 23 September 2002 06:08, Frank Reifenstahl wrote: [...]
Read.pl > /dev/ttyS0 < /dev/ttyS0
Zu Beginn meiner Tests hat das Skript alles schön von der einen Schnittstelle gelesen. Als nun das zweite Meßgerät dran sollte, hat das Skript beim Lesen von ttyS1 nur jedes zweite Zeichen geliefert. Mittlerweile liefert auch ttyS0 manchmal alle, manchmal nur jedes zweite Zeichen, auch wenn ich das zweite Gerät abhänge. An den Meßgeräten läßt sich nicht viel konfigurieren, nur 5-6 Standardparameter für die Schnittstelle.
Und nun 'ne Menge fragen:
1.) Hat jemand eine spontane Idee? Sieht so ein timing-Problem aus?
Hallo, du musst dafuer sorgen, dass nur genau ein client auf die Schnittstelle zur selben Zeit zugreift und dass der Response des Maessgeraets auch zum Request des Clients gehoert. Bei der RS232 Schnittstelle muessen die Konfiguration von Sender und Empfaenger haargenau uebereinstimmen, sonst gibt das Datenmuell. Probier mal pyserial (ein Python Module das auch unter Win laeuft).
2.) Ist der Datenaustausch über die serielle Schnittstelle heutzutage eigentlich nicht soweit standardisiert, daß die linux-/etc/init.d/serial-Initialisierung funktioniert?
3.) Wie sollte man bei der Fehlersuche am sinnvollsten vorgehen?
4.) Initialisieren der Schnittstelle: mit was am besten (stty/setserial/Device::SerialPort)?
5.) Das Init-Skript sollte die Baudrate auf 9600 einstellen, Fehler werden keine gemeldet. Wenn ich "setserial -a" aufrufe, erhalte ich aber ein "BAUD_BASE 115200"!?
Das reicht erst mal. Bin dankbar für jeden Tipp.
Tschüß Frank