Hi weiss jemand ob es möglich ist den UART beim AVR schneller als 115600 baud laufen zu lassen? Falls ja - kennt wer ein PC terminal programm was damit klarkommt? Ich hab nen FDTI-chip dranhängen also die PC seite sollte das Tempo mitmachen. Irgendwer irgendwelche Ideen? Tobi
> weiss jemand ob es möglich ist den UART beim AVR schneller als 115600 > baud laufen zu lassen? Kann man. Laut Handbuch vom Atmega32 z.B. bis 1M. Sinn macht es erst, wenn der AVR mit einem entsprechend hohen Takt (>= 16 MHz) betrieben wird.
Habe letztens die Kombination Mega32 und FT232R bei internem Oszillator auf 8MHz mit 1MBaud laufen lassen. Dazu natürlich das 2X Bit aktivieren. Wenn man den internen Oszillator nimmt, natürlich nicht vergessen das Kalibrierungsregister zu schreiben.
im PC geht das mit der seriellen Schnittstelle nicht. Auch mit dem Timer wird das schwierig werden. Ist aber vielleicht mal einen Versuch wert. Über die parallele Schnittstelle würde dann die Ausgabe gehen. Wenn der Timer zu langsam ist, könnte man das ganze in Software probieren, dann geht die Zeit über die CPU Laufzeit. Das dürfte nicht einfach zu programmieren sein, halte es aber nicht für ausgeschlossen, wenn da nicht gerade andere Programme wie Windows aktiv sind. Im Augenblick habe ich dazu keine Zeit, das zu programmieren. Kannst es vielleicht selber mal versuchen. mfg
FTDI-Treiber und FTDI-Chip FT232R erlauben 1MBaud Datentransferrate im seriellen Modus. Im Bitbang Modus ist es sogar noch ein wenig mehr. Ein moderner Computer ist in der Lage, über seine USB2 Schnittstelle die Daten auch ohne Handshaking schnell genug abzuholen. Als Programm kommt HTerm in Frage. Siehe PC-Software-Forum.
@Wolfram
> im PC geht das mit der seriellen Schnittstelle nicht.
Dies stimmt so nicht. Die moderen PC's (seit ca. 5 Jahren), nutzen alle
programmierbare UART's. Diese lassen sich nahezu auf jede Baudrate
einstellen. Intern verwenden diese einen Takt von ca. 9,216MHz.
Das Problem ist nur, das das genutzte PC-Programm dies unterstützen muß,
zur Not selbst eines schreiben.
Ich habe einen selbst geprogten PROFIBUS-Simulator, der mit 500kBaud mit
dem PC kommuniziert.
Grüße
Hans-Josef
Travel Rec. wrote: > FTDI-Treiber und FTDI-Chip FT232R erlauben 1MBaud Datentransferrate im > seriellen Modus. Im Bitbang Modus ist es sogar noch ein wenig mehr. Ein > moderner Computer ist in der Lage, über seine USB2 Schnittstelle die > Daten auch ohne Handshaking schnell genug abzuholen. Als Programm kommt > HTerm in Frage. Siehe PC-Software-Forum. Ich verwende genau diese Kombination. Funktioniert bei mir bestens.
@Travel Rec und Bernd T. In Hterm kann ich keine Baudrate von 1 Mbaud finden. Das geht bei mir nur bis 260000, wenn ich mal die fehlende 0 als Schreibfehler betrachte. Außerdem funktioniert das nur unter Windows. Ist also nur eingeschränkt nutzbar. @Hans Joseph ich würde das dann selber schreiben. Hast Du da Informationen, welche Daten ich in welche Register schreiben muß? Ich programmiere in Assembler und verwende auch BIOS und DOS Funktionen. Aber auch Direktzugriff. mfg
@ David W. (dave) >Habe letztens die Kombination Mega32 und FT232R bei internem Oszillator >auf 8MHz mit 1MBaud laufen lassen. Ahhhh, schon wieder so Einer!!! >Kalibrierungsregister zu schreiben. Das rettet deinen Arsch nicht. AVR-Tutorial: UART MFG Falk
lass es, dass ist nicht ausrottbar. Und vor allem die immensen Kosten eines passenden Quarzes/Resonators....
>In Hterm kann ich keine Baudrate von 1 Mbaud finden. Das geht bei mir >nur bis 260000... Man kann alles Mögliche an Baudraten manuell eingeben bzw. in eine Datei hterm.cfg schreiben. Wenn der angeschlossene COM (oder virtuelle COM) diese dann unterstützt, wird auch erfolgreich verbunden.
Hi also wenn ich da richtig sehe muss ich meinem AVR ein quarz goennen und dann die teillerrregister vernuenftig setzen. Da es mir ja quasi egal ist WIE schnell es ist (hauptsache schneller) kann ich ja die PC seite nach meinem belieben anpassen. Sprich wenn es ein krummer wert im AVR wird wirds halt auch einer am PC. Weiss wer ob Python so was unterstuetzt? Tobi
So also der FDTi ist nun auf 1 Mbaud gepimpt allerdings hab ich noch das problem das Python das nicht unterstuetzt. Weder USPP noch Pyserial kommen damit klar. Hat jemand Vorschlage? Tobi
Tobi A. wrote: > Da es mir ja quasi egal ist WIE schnell es ist (hauptsache schneller) > kann ich ja die PC seite nach meinem belieben anpassen. Sprich wenn es > ein krummer wert im AVR wird wirds halt auch einer am PC. Nein, das geht so nicht. Du kannst nicht jede x-beliebige Baudrate am PC einstellen. (Auch wenn die Applikation das erlaubt).
>Nein, das geht so nicht. Du kannst nicht jede x-beliebige Baudrate am PC >einstellen. (Auch wenn die Applikation das erlaubt). Kann man so nicht sagen, da der FTDI-Treiber sehr flexibel ist. Er paßt die Baudrate, die eingegeben wurde, der nächstverfügbaren realen Baudrate an, die über viele recht feine Teilerstufen einstellbar ist. Siehe FTDI Dokumentation.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.