Forum: Mikrocontroller und Digitale Elektronik Nicht Standart Baudraten am PC einlesen


von JW (Gast)


Lesenswert?

Hallo,
hab hier zwei µC die mit 120.000 über UART kommunizieren. habt ihr eine 
Idee wie ich das einfach am PC mitloggen kann? 115.200 ist schon sehr 
knapp (4,2%). Gibt es dafür spezielle Tools oder Treiber?

mfg JW

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Nein, dafür brauchst Du spezielle Hardware.

Die im PC verbaute UART erzeugt ihre Baudraten aus einem 1.8432 
MHz-Takt, der mit einem Prescaler durch 16 geteilt wird (das liegt an 
der üblichen Art der Bitsynchronisation von UARTs). Damit ist die 
höchste erzielbare Baudrate 115200, und die nächstniedrigere ist mit 
57600 exakt halb so groß.

Wenn Du eine andere UART mit anderer Takterzeugung verwendest, besteht 
durchaus die Chance, die von Dir gewünschte Baudrate genauer zu treffen 
- sieh Dir mal UARTs an, die deutlich höhere Baudraten als 115200 
erlauben. Möglicherweise genügt ja bereits der Baudratengenerator im 
FT232.

Allerdings   musst Du dann auch ein Programm verwenden, das die Baudrate 
nicht aus einer Liste mit konstanten Werten auswählt, sondern wirklich 
den eingestellten Wert an den Devicetreiber weiterreicht.
Das "Terminalprogramm" von Tobi (siehe "PC-Programmierung") ist ein 
Beispiel dafür.

von Michael W. (mictronics) Benutzerseite


Lesenswert?

Nimm das Terminal Programm Bray's Terminal von hier: 
http://bray.velenje.cx/avr/terminal

Das geht auch mit Custom Baudrates, zb. fixe 128000 oder jeder andere 
beliebige kannst du eintragen. Ich habe zB. auch mit 10,4KBaud schon 
gearbeitet.

Probiers einfach ;)

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Auch dieses Programm kann Hardwareeinschränkungen wie den 
Baudratengenerator der PC-Standard-UARTs nicht aufheben.

Die PC-Standard-UARTs (8250/16450/16550) unterstützen jeden ganzzahligen 
(16-Bit) Teiler von 115200, also
  115200 (/1),
   57600 (/2)
   38400 (/3)
   28800 (/4)
   23040 (/5)
   19200 (/6)
  ~16457 (/7)
   14400 (/8)
   12800 (/9)
   11520 (/10)
  ~10473 (/11)
    9600 (/12)

etc.

Andere (und höhere) Baudraten sind erst mit ANDERER HARDWARE möglich.

von let (Gast)


Lesenswert?

Der FT232R USB <-> Seriell Konverter kann mit 'krummen' Baudraten
arbeiten. Das Teil sitzt in vielen Adapterkabeln drin.

http://www.ftdichip.com/Documents/AppNotes/AN232B-05_BaudRates.pdf


 - Michael

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Danke, "let", für den Link; ich hatte entsprechendes ja bereits 
angenommen:

> Möglicherweise genügt ja bereits der Baudratengenerator
> im FT232.

Mit der Appnote kann man selbst berechnen, wie genau eine gewollte 
Baudrate erreichbar ist - Abschnitt 1.3 auf Seite 5.

von let (Gast)


Lesenswert?

> Möglicherweise genügt ja bereits der Baudratengenerator
> im FT232.

Dadurch bin auch erst darauf gekommen. Vor einigen Monaten bin
ich beim Design einer LPC2138/01* Platine darauf gestoßen,
hatte mich seinerzeit aber nicht dafür interessiert.

 - Michael

*) vergesst die alten 2138er. Wenn ein gewisser Robert etwas anderes
sagt: Zum Teufel mit ihm ;)




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
Noch kein Account? Hier anmelden.