Anfänger-Frage - wie viele Uarts brauche ich ?

Gast #132976
Lesenswert?

Hallo,

ich spiele zur Zeit mit dem Gedanken mich in die
Mikrocontroller-Technik einzuarbeiten. Dabei geht es mir unter anderem
um die Midi- Datenverarbeitung. Allerdings mangelt es noch ein bisschen
an Wissen bei der Entscheidung, welcher der richtige Controller für mich
ist.

Und zwar möchte ich Midi Daten empfangen und gleichzeitig völlig Andere
herraussenden - Midi In über RXD und Midi Out über TXD eben - soweit ja
ganz einfach ...

Jetzt hat mir ein Bekannter aber gesagt (arbeitet aber auch mit einem
anderen Controller) ich bräcuhte 2 Uarts um gleichzeitig Mididaten
sowohl empfangen als auch senden zu können. Wenn ich das richtig
verstanden habe könne man den Datenbuffer oder so immer nur in eine
Richtung verwenden !?

Stimmt das so ? Brauche ich, um Midi-Eingang und Midi-Ausgang parallel
zu betreiben einen Controller mit 2 Uarts ? Oder ist das vielleicht von
Controller zu Controller verschieden?

Bitte keine Aussage "Fang doch klein an" ... ich hätte doch schon
gerne gleich einen Controller, mit dem ich für die Zukunft gerüstet
bin.

MfG

Andi K.
Gast #132977
Lesenswert?

Also theoretisch brauchst du nur einen Controller mit einer UART.

über eine Leitung der UART empfängst du die Daten (von PC A) und auf
der anderen Leitung schickst du die Daten wieder raus (an PC B).
PC A und B kann identisch sein muss aber nicht.

Nachteil wenn du nur eine UART nimmst, du kannst kein Fehlerhandling
oder Handshake einbauen (es sei denn A und B sind identisch und die
Midi-Daten brauchen weniger als 115kb/s des Datenstromes).

Einfacher und sicherer ist es allerdings mit 2 UARTS.
Gast #132978
Lesenswert?

Also ein UART reicht vollkommen für je ein MIDI-In und MIDI-Out.
Bei MIDI gibt es kein Handshake und die Baudrate liegt mit festen 31250
nicht sonderlich hoch.
Im übrigen ist da, im Gegensatz zu allgemeinen RS232-Anwendungen, eher
ein Systemtakt (Quarz) mit gerader Taktfrequenz angebracht. So ergibt
sich z.B. aus 8 MHz mit Vorteiler 256 die gewünschte MIDI-Baudrate.

Gruß
Ingo
Gast #132980
Lesenswert?

"16MHz AVR" bedeutet nur, das er mit max. 16 MHz betrieben werden
kann. Ein 8 MHz Quarz geht natürlich auch, dann ist er aber auch nur
etwa halb so schnell :-) Verbraucht aber auch etwas weniger Strom.
Letztendlich kommt es darauf an, wie Umfangreich die Funktionen zur
Ver-/Bearbeitung der MIDI-Daten sein sollen.

Gruß
Ingo
Gast #132981
Lesenswert?

Hallo,

danke, das ist mir schon klar soweit ;o)

Mir ging es nur um die Auswahl des Quarzes,weil ich in diversen
Schaltplänen mit 16 MHz AVRs ein 8 MHz Quarz gesehen habe ...
da dachte ich, daß der ATMega vielleicht eine Art Frequenzmultiplikator
hat oder so ...
#132982
Lesenswert?

"...mit 16 MHz AVRs ein 8 MHz Quarz gesehen habe..."

Das ist korrekt so, man muß Bauteile nicht ausquetschen bis zu
gehtnichtmehr.

Ich habe z.B. viele ATTiny26 im Einsatz, die mit 1MHz arbeiten, obwohl
sie 16MHz könnten.

Ein guter Entwickler läßt immer Reserven (höhere Zuverlässigkeit).


Für die UART gilt:

Quarz = n  16  Baudrate

Der kleinste mögliche Quarz wäre also 1  16  31250 = 500kHz.


Peter

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