Eclipse Terminal Baudrate

Gast #3497220
Lesenswert?

Wie ihr ja bestimmt wißt, kann man in Eclipse auch ein Terminalfenster 
öffnen.

Falls ihr es noch nicht wissen solltet:

http://stackoverflow.com/questions/12140381/how-to-open-a-serial-terminal-in-eclipse-juno

Weiss zufällig jemand wie man da auch ungewöhnlich Baudraten nutzen 
kann? Also z.B 10000Baud anstatt 9600B?

Bevor jetzt einer sagt, noe das geht nicht, das kann die Hardware nicht. 
Es geht wenn man einen virtuellen FTDI Comport verwendet.

Olaf
Persönliche Seite #3497295
Lesenswert?

Olaf schrieb:
> Es geht wenn man einen virtuellen FTDI Comport verwendet.

Das mag sein. Kann aber die von Java verwendete Bibliothek für die 
Ansteuerung von seriellen Schnittstellen das? Lässt die beliebige 
Baudraten an das unterliegende Betriebssystem durch, oder kennt die nur 
eine fixe Liste von Baudraten?

Dir wird wenig anderes übrigbleiben, als die Eclipse-Sourcen daraufhin 
zu untersuchen - sofern nicht noch jemand hier postet, der all das schon 
untersucht hat.

Abhilfe: Nimm ein anderes Terminalprogramm.
#3497847
Lesenswert?

Rufus Τ. Firefly schrieb:
> Olaf schrieb:
>> Es geht wenn man einen virtuellen FTDI Comport verwendet.
>
> Das mag sein. Kann aber die von Java verwendete Bibliothek für die
> Ansteuerung von seriellen Schnittstellen das? Lässt die beliebige
> Baudraten an das unterliegende Betriebssystem durch, oder kennt die nur
> eine fixe Liste von Baudraten?

Wahrscheinlich letzteres.
Zumal in der meistens verwendeten Windows-API Funktion setCommState, 
eine serielle Schnittstelle mit einem DCB konfigueriert wird, und es in 
dieser nur eine Handvoll Konstanten für die Baudraten gibt.

http://msdn.microsoft.com/en-us/library/aa363214(v=vs.85).aspx

Und das ist auch meistens gut so. Denn wenn Lieschen Müller die Baudrate 
jeweils in Zahlenform eintippen muss, vertippt sie sich mindestens 3 
mal. Wählt sie die aber aus einer Combobox aus, dann kann sie sich schon 
mal nicht mehr vertippen.

Von einem FTDI, und das der auch andere Baudraten könnte, weiß aber 
weder setCommState noch die DCB Struktur irgendwas.
Persönliche Seite #3498149
Lesenswert?

Karl Heinz schrieb:
> ... in der meistens verwendeten Windows-API Funktion setCommState,
> eine serielle Schnittstelle mit einem DCB konfigueriert wird, und es in
> dieser nur eine Handvoll Konstanten für die Baudraten gibt.
>
> http://msdn.microsoft.com/en-us/library/aa363214(v=vs.85).aspx

Dann sieh Dir mal die numerischen Werte dieser Konstanten an.

Das schreibt auch MS selber:
1
BaudRate
2

3
  The baud rate at which the communications device operates.
4
  This member can be an actual baud rate value, or one of the following indexes.

Ja: Das ist ... einfach die Baudrate. Anstelle dieser Konstanten kann 
also auch direkt die Baudrate angegeben werden, und die wird auch 
transparent an den jeweiligen Devicetreiber durchgereicht.

Die klassische PC-Onboard-Schnittstelle mit 8250 bzw. 16550, die kennt 
nur die Baudraten bis einschließlich CBR_115200, das ist aber eine 
Hardwareeinschränkung, denn die 8250 erzeugt ihre Baudrate aus einem 
1.8432-MHz-Quarz mit einem Vorteiler von 16, und jedem ganzzahligen 
Teiler von 1 bis potentiell 64k, wobei Werte größer als 2304 
ungebräulich sein dürften - das sind 50 Baud, wie man sie von 
mechanischen Fernschreibern her kennt.

Jede modernere Schnittstelle aber, wie insbesondere der FT232, erzeugt 
ihre Baudrate auf andere, flexiblere Art und Weise. Und hier hat MS bei 
der API --erstaunlicherweise-- mal mitgedacht und statt symbolischer 
fixer Konstanten für die Baudrate einfach den direkten Wert verwendet, 
so daß jede beliebige Baudrate verwendet werden kann, so es die Hardware 
und der unterliegende Devicetreiber zulassen.
Gast #3498762
Lesenswert?

> In der Tat. Erstaunlich.

Das hab ich auch gedacht. Wer noch die Register des 8250 persoenlich 
kennengelernt hat, kommt erstmal garnicht auf den Gedanken. Praktisch 
ist das ganze natuerlich im Embedded Bereich wo die Baudraten auch 
schonmal unbewoehnlich sein koennen.

Noch lustiger ist aber die Eingabe bei Hterm. Wo der Programmierer das 
wohl auch nicht bedacht hat, aber man die Oberflaeche "bescheissen" kann 
indem man immer nur eine Zahl aendert.

Olaf
#5754569
Lesenswert?

Olaf schrieb:
> Noch lustiger ist aber die Eingabe bei Hterm. Wo der Programmierer das
> wohl auch nicht bedacht hat, aber man die Oberflaeche "bescheissen" kann
> indem man immer nur eine Zahl aendert.

Hat der Programmierer jetzt gefixt, jetzt kommt die Fehlermeldung
"Value of "XXXXX" is not supported.

Kenn jemand einen anderes Terminalprogramm, mit freier Baudraten-Wahl?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren