www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik zwei unterschiedliche Baudraten für RXD & TXD an Atmega128?


Autor: Niklas Roy (niklas)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Spezialisten!

Ich baue gerade eine Hardware, bei der ich u.a. mit RFID einen 
MP3-Player steuern muss. Der RFID Leser sendet Daten mit 9200 Baud und 
hängt an RXD0.
Der MP3-Player erwartet mit 19200 Baud gesendete Daten und hängt 
momentan an TXD0 (könnte aber auch an TXD1 angeschlossen werden).

Als Controller verwende ich einen Atmega128, den ich in Bascom 
programmiere. Die Baudraten der Peripherie kann ich leider beide nicht 
ändern.

Nun die konkrete Frage: Kennt jemand eine Möglichkeit, wie ich innerhalb 
eines Programms mit diesen beiden Geräten auf unterschiedlichen 
Geschwindigkeiten kommunizieren kann?

Vielen Dank schonmal für Eure Hilfe,

Niklas

Autor: Hopser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da der ATmega128 zwei UARTs besitzt, sollte das kein Problem sein.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit einer Software-UART kännte man das schon hinkriegen.
In Hardware: Eine Schnittstelle - Eine Baudrate

Häng also deinen RFID an die Serielle 0
und den MP3 Player an die Seriell 1

Autor: Niklas Roy (niklas)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die schnellen Antworten!

Die _Hardware kann ich gut ändern. Nur wie richte ich eine Software UART 
ein? Kann mir da jemand noch konkreter weiterhelfen? Vielleicht sogar 
mit ein paar Zeilen Code? Bin leider absolut kein Programmierspezialist.

Vielen Dank,

Niklas.

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bascom, was?

Das übliche: in der Hilfe nachschauen.

$BAUD setzt die Baudrate für UART 0
$BAUD1 setzt sie für UART 1

PRINT "test"       sendet den String zur UART 0
PRINT #0, "test"   ebenfalls
PRINT #1, "test"   sendet den String zur UART 1


Zur ersten Zeile in diesem Posting: Ist es wirklich so
schwer in der Hilfe nachzuschauen. Bascom macht einem die
Dinge wirklich einfach, nur lesen muss man noch selber.

Autor: Niklas Roy (niklas)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, ich schäme mich, trotzdem Danke!

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn nicht gleichzeitig gesendet und empfangen werden muß, sollte 
eigentlich auch nichts dagegen sprechen, zum Senden die Baudrate auf 
19200 umzustellen und wieder zurück auf 9600, wenn er fertig ist mit 
senden.

Gruß aus Berlin
Michael

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.