Verständnisproblem MIDI an UART

Gast #780137
Hi Leute, MIDI ist ja 0V = 1 und 5V = 0. TTL bekanntlich ja andersrum. 
So weit so gut. Ich frage mich jetzt, wenn ich MIDI an den USART des 
Controllers bringen will, muss ich dann invertieren oder nicht?

Mein Geühl und Verständnis sagt: Invertieren

Aber:

Alle Projekte im Web setzen die Schnittstelle so um, dass eine logische 
MIDI-1 0 V am RX-Pin sind.

Beispiele:
http://m.bareille.free.fr/mc628/midi628shl.gif
alles auf ucapps.de

Jetzt frage ich mich: Wieso machen die das?

Wegen dem Startbit? Damit die Startflanke eben von 5 nach 0V fällt?
Wie gehts dann weiter? Der Controller liest ja dann "Falsch". Dann 
nochmal alles 0xFF OR ?

Bin gerade etwas verwirrt und würde mich über etwas Aufklärung freuen.

mfg, Jens
Gast
Der UART des MCUs gibt schon invertiert aus:
0 -> 5V
1 -> 0V

Bei einer 1 liegt am Tx-Pin 0V -> Optokoppler U2 steuert duch -> am 
Rx-Pin liegt 0V
MIDI ist eine Stromschnittstelle mit Optokopplern auf der Eingangsseite. 
Logisch "1" bedeutet "kein Strom" und logisch "0" bedeutet "Strom" 
(steht leider in der Wikipedia auch verkehrt drin). Somit kann man 
UART/SCI... ohne Invertierung verwenden. Bei einer logischen "0" fließt 
Strom von TX über den Optokoppler auf der Empfängerseite und den 
Strombegrenzungswiderstand nach +5V (geht auch mit anderen Spannungen). 
Der Optokoppler ist so an RX angeschaltet, dass er durchgesteuert nach 
Masse (="0") zieht. Also sozusagen eine 1:1 Verbindung.

Gruß Jörg
Gast
Aha, also wenn ich das Richtig verstanden habe, stehts in der Wikipedia 
falsch drinne, die geschaltete Leitung des MIDI-weges ist als "normal 
rum" anzusehen. 0V=0, 5V=1. Halt eben Stromgesteuert über Optokoppler. 
Richtig soweit?

@ Andreas W: Bist du dir sicher das der UART des PIC invertiert 
ausgiebt?
Wozu würden dann Treibersteine a'la MAX232 invertieren?

Ich glaube die sind TTL-Logisch. Bitte korrigiert mich wenn ich irre.

Ansonsten schonmal vielen Dank!
(Firma: TravelRec.) Persönliche Seite
Wichtig ist noch, daß der Arbeitswiderstand des Optokopplertransistors 
nicht zu groß ist, da sonst der Koppler zu langsam wird bzw. die Flanken 
zu flach werden. 470 Ohm bis 1kOhm haben sich bei Kopplern mit 100-400% 
CTR bewährt. Sollte die Verbindung fehlerhaft sein, zuerst an der Stelle 
suchen.
Gast
Gehe ich dann richtig in der Annahme, dass ich bei Niederohmiger 
Beschaltung Problemlos z.B. den CNY-17 verwenden könnte und nicht 
unbedingt Darlington/Trigger-Typen brauche?
Gast
Jensemann wrote:
> Gehe ich dann richtig in der Annahme, dass ich bei Niederohmiger
> Beschaltung Problemlos z.B. den CNY-17 verwenden könnte ...
der CNY-17 mit einem Widerstand von <2k bei 5V reicht nach meiner 
Erfahrung für die MIDI Baudrate von 31250 problemlos.

Gruß

Fred
Gast
Allright, vielen Dank für eure hilfe. Das das im Wikipedia so verdreht 
drinnesteht is aber auch scheisse.... is ja einer der wenigen deutschen 
Artikel, und alles andere was ich bisher davon "brauchte" war ganz 
brauchbar.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.