Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Ubuntu-Forum & Kubuntu-Forum | www.Ubuntu-Forum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

  • »moelski« ist der Autor dieses Themas

Beiträge: 5

Registrierungsdatum: 04.04.2009

Derivat: Ubuntu

Architektur: 32-Bit PC

  • Nachricht senden

1

04.04.2009, 06:30

STTY - serielle Schnittstelle mit 128000 Baud?

Moin !

Ich habe hier ein Gerät das hat 128000 Baud. Ich gebe zu etwas ungewöhnlich, aber funktionieren tut das wunderbar (unter Windows). Nun habe ich ein Ubuntu hier und würde gerne mittels socat die Daten ins Netzwerk beamen. Aber es scheitert schon an der Einrichtung der Schnittstelle.

Nach : stty -raw 128000 < /dev/ttyS0 bekomme ich:
ungültiges Argument : 128000.

Wenn ich es mit stty -raw ispeed 128000 < /dev/ttyS0 versuche kommt zwar kein Fehler, aber es kommen auch keine Daten an (cat /dev/ttyS0).

Hat jemand eine Idee wie man das hinbiegen kann?


Grüße Dominik

Broco

User

  • »Broco« ist männlich

Beiträge: 266

Registrierungsdatum: 05.12.2008

Derivat: Ubuntu

Architektur: 64-Bit PC

Desktop: GNOME 3.0

Andere Betriebssysteme: Debian Wheezy, Knoppix, Fedora

  • Nachricht senden

2

04.04.2009, 10:50

Also stty kann meines Wissens nach nur voreingestellte Baudraten, die als Optionen mit angegeben werden.
D.h. andere als dem Programm verfügbare Baudraten kannst du nicht benutzen.
Kann aber auch sein, dass ich mich irre und es geht.
Dann sollte

Quellcode

1
stty -F /dev/ttyS0 -raw ispeed 128000 ospeed 128000

funktionieren.

Ich frage mich aber auch ehrlich gesagt gerade, wofür zur Hölle du 128000 Baud brauchst, erklär mal :D
However, zur Lösung des Problems solltest du es vll. eher mit setserial probieren, hier 2 Links mit Infos:
http://www.linuxhaven.de/dlhp/HOWTO/DE-Modem-HOWTO-8.html
http://www.linuxquestions.org/questions/…n-linux-236599/

  • »moelski« ist der Autor dieses Themas

Beiträge: 5

Registrierungsdatum: 04.04.2009

Derivat: Ubuntu

Architektur: 32-Bit PC

  • Nachricht senden

3

04.04.2009, 12:37

Moin !



Nö das geht auch nicht. Und auch mit setserial kommt man nicht weiter ;(



Zitat

Ich frage mich aber auch ehrlich gesagt gerade, wofür zur Hölle du 128000 Baud brauchst, erklär mal


Ganz einfach. Ich will die seriellen Daten eines Ladegeräts (arbeitet nunmal mit 128k BPS) übers Netzwerk übertragen um sie in Windows auszuwerten.

Und es scheitert nun an der Config der Schnittstelle unter Linux. :wacko:

  • »floogy« ist männlich

Beiträge: 3 084

Registrierungsdatum: 10.03.2005

Derivat: Ubuntu

Architektur: 64-Bit PC

Desktop: GNOME 3.0

Andere Betriebssysteme: debian

  • Nachricht senden

4

04.04.2009, 13:24

Quellcode

1
2
3
4
5
~$ setserial -a /dev/ttyS0
/dev/ttyS0, Line 0, UART: 16550A, Port: 0x03f8, IRQ: 4
	Baud_base: 115200, close_delay: 50, divisor: 0
	closing_wait: 3000
	Flags: spd_normal skip_test


Hast Du schon versucht den Flag spd_normal anzupassen? Was gibt setserial -a bei Dir aus. Eventuell ist der Chip ja garnicht in der Lage eine höhere Baudrate zu liefern.

  • »moelski« ist der Autor dieses Themas

Beiträge: 5

Registrierungsdatum: 04.04.2009

Derivat: Ubuntu

Architektur: 32-Bit PC

  • Nachricht senden

5

04.04.2009, 14:17

Moin !

Bei mir steht genau das gleiche wie bei dir. Das Ubuntu läuft übrigens in einem VMWare.



"den Flag spd_normal anzupassen"

Wie tu ich das ?

  • »floogy« ist männlich

Beiträge: 3 084

Registrierungsdatum: 10.03.2005

Derivat: Ubuntu

Architektur: 64-Bit PC

Desktop: GNOME 3.0

Andere Betriebssysteme: debian

  • Nachricht senden

6

04.04.2009, 14:22

Quellcode

1
man setserial


Da steht übrigens:

Zitat

baud_base baud_base
This option sets the base baud rate, which is the clock fre‐
quency divided by 16. Normally this value is 115200, which is
also the fastest baud rate which the UART can support
.

  • »moelski« ist der Autor dieses Themas

Beiträge: 5

Registrierungsdatum: 04.04.2009

Derivat: Ubuntu

Architektur: 32-Bit PC

  • Nachricht senden

7

04.04.2009, 14:29

Moin !



Hmm ich seh schon. Ich komme da nicht weiter.

Dennoch danke für eure Hilfen!

  • »floogy« ist männlich

Beiträge: 3 084

Registrierungsdatum: 10.03.2005

Derivat: Ubuntu

Architektur: 64-Bit PC

Desktop: GNOME 3.0

Andere Betriebssysteme: debian

  • Nachricht senden

8

04.04.2009, 14:58

Ich bin mir nicht so sicher, da ich auch schon Textstellen gesehen habe, in der höhere Baudraten vorkamen:

http://chem.skku.ac.kr/~wkpark/tutor/linuxdoc/LinuxDoc Linux modem HOWTO:

Zitat

Hier ist eine Liste von gebräuchlichen Divisoren und den entsprechenden Geschwindigkeiten (unter der Annahme einer maximalen Geschwindigkeit von 115,2 kbps): 1 (115,2k), 2 (57,6k), 3 (38,4k), 6 (19,2k), 12 (9,6k), 24 (4,8k), 48 (2,4k), 96 (1,2k), etc. Wenn Sie eine Geschwindigkeit von 115,2 kbps im Terminalprogramm oder mit Hilfe von Möglichkeiten, das Problem der Geschwindigkeitseinstellung zu umgehen

Um diese Berechnungsweise zu korrigieren (aber nicht, um das Problem in allen Fällen zu beheben) können Sie mit Hilfe von setserial /dev/ttyS2 spd_cust baud_base 230400 divisor 1 können Sie z.B. für den Port Die Taktfrequenz entspricht nicht dem Wert von »baud_base«

Beachten Sie, dass der Wert für »baud_base« normalerweise wesentlich kleiner ist als die Frequenz des Quarzoszillators der Hardware. Die Oszillatorfrequenz wird häufig durch 16 geteilt, erst dieser Wert ergibt die tatsächliche Maximalgeschwindigkeit. Diese hohe Oszillatorfrequenz wird benötigt, damit jedes Bit mehrfach geprüft werden kann, um zu entscheiden, ob es sich um eine 0 oder um eine 1 handelt. Geschwindigkeitstabelle

Für ein 56k Modem eignet sich ein 16650 UART am besten, aber nur wenige interne Modems oder serielle Schnittstellenkarten sind damit ausgerüstet. Am zweitbesten ist die Verwendung eines 16550 UART, der abgeändert wurde, um 230,4 kbps zu unterstützen. Die folgende Tabelle enthält die empfohlenen Geschwindikeiten des seriellen Ports in Abhängigkeit der Modemgeschwindigkeit: 56k (V.90): 115200 bps oder 230400 bps (eventuell einige Prozent schneller?) 28,8k (V.34), 33,6k (V.34): 115200 bps 14,4k (V.32bis), mit V.42bis Datenkompression: 57600 bps 9,6k (V.32), mit V.42bis Datenkompression: 38400 bps langsamer als 9,6k (V.32): die Schnittstellengeschwindigkeit sollte der Modemgeschwindigkeit entsprechen. Alle oben angegebenen Geschwindigkeiten können die V.42bis Datenkompression und die V.42 Fehlererkennung verwenden. Wird keine Datenkompression verwendet, kann die Geschwindigkeit auch kleiner als angegeben eingestellt werden, so lange sie über der Modemgeschwindigkeit liegt. Terminalprogramme und Hilfsprogramme

Also einfach mal ausprobieren.

Quellcode

1
hwinfo --all|grep -A5 -i Serial\ Controller


Interessant ist auch, dass die tty-Schnittstelle schon über 100 (!) Jahre alt ist:
http://www.hsg-kl.de/faecher/inf/netze/m…bitfuerbit.html

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »floogy« (04.04.2009, 14:58)


  • »moelski« ist der Autor dieses Themas

Beiträge: 5

Registrierungsdatum: 04.04.2009

Derivat: Ubuntu

Architektur: 32-Bit PC

  • Nachricht senden

9

04.04.2009, 15:47

Moin !

Die Ergebnisse mal als Bild. Ich kann da gerade keinen Text kopieren.
»moelski« hat folgendes Bild angehängt:
  • serialout.png

  • »floogy« ist männlich

Beiträge: 3 084

Registrierungsdatum: 10.03.2005

Derivat: Ubuntu

Architektur: 64-Bit PC

Desktop: GNOME 3.0

Andere Betriebssysteme: debian

  • Nachricht senden

10

04.04.2009, 21:55

Vielleicht mal lesen, und auch Brocos Linktipps nachgehen:
http://www.ibiblio.org/pub/Linux/docs/HO…tml#speed_table