mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR UART schneller als 115600


Autor: Tobi A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 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.

Autor: D. W. (dave) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Lt. Datenblatt (z.B. ATMega48) können AVRs bei 20MHz bis zu 2,5Mbps.

MfG Spess

Autor: Wolfram Quehl (quehl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Hans Josef (hjm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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

Autor: Bernd T. (bastelmensch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei mir auch ;-)

Autor: Wolfram Quehl (quehl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ 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

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
lass es, dass ist nicht ausrottbar. Und vor allem die immensen Kosten 
eines passenden Quarzes/Resonators....

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>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.

Autor: Tobi A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Tobi A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ääääh HTerm?! Nur nochmal zur Sicherheit.

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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).

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.