Hallo,
ich habe eine MBox2 und einen billigen USB-Midi Adapter hier. Die
angehängte Midi-Out Schaltung funktioniert mit der MBox2 hervorragend,
mit dem billigen Adapter jedoch gar nicht.
Woran könnte das liegen? Verbinde ich den Midi-Out der Mbox mit dem
Midi-In des Adapters funktioniert das ebenfalls, es ist also nichts
kaputt.
An der Basis des Transistors sehe ich beim Senden das Signal, 2.2V-3.3V.
Am Collector sehe ich beim Senden auch ein Signal, welches sich jedoch
nur schwer in Worte fassen lässt.
Tips? R3 auf 1k reduzieren bringt auch nichts. Ich bin etwas ratlos.
Jan schrieb:> Am Collector sehe ich beim Senden auch ein Signal, welches sich jedoch> nur schwer in Worte fassen lässt.
Dann häng halt ein Oszi Foto an...
Rufus Τ. F. schrieb:> War MIDI nicht eine Strom-Schnittstelle?
Genau. In der Schaltung in deinem Link, muss der Ausgang des µC
invertiert sein, was bei meinem nicht möglich ist. Da das Midi-In der
MBox2 aber funktioniert kann ich nicht so falsch liegen.
Bestimmte billige Midiadapter haben keinen Optokoppler. Die brauchen
dann direkt 3/5V. Es fließt also kein merklicher Strom gegen GND.
Ich habe aber schon in Billigteilen OKs eingelötet. Die Leiterplatten
sind meistens dafür ausgelegt.
Stefan U. schrieb:> Hast du eventuell einfach> die beiden Anschlüsse 4 und 5 vertauscht?
Siehe, dass es mit der MBox2 hervorragend funktioniert.
Jens schrieb:> Bestimmte billige Midiadapter haben keinen Optokoppler. Die brauchen> dann direkt 3/5V. Es fließt also kein merklicher Strom gegen GND.
Wenn ich den geschmeidig aufmachen könnte, würde ich mal reinschauen. So
billig scheint der aber nicht zu sein, es ist ein Prodipe.
Ist das so ein kleines ovales Ding, wo drei Kabel rauskommen - Midi In
Out und USB?
Wenn ja, dann ist es genau das. Man bekommt die Dinger auf - irgendwie.
Dann kann man dort einen SMD-OK einlöten und Widerstände.
Was auch geht, ist die Schaltung etwas umzubauen. Den MidiOut 1.3B mit
220 Ohm direkt an Anschluss 5 ohne Transistor. Anschluss 4 mit 220Ohm
gegen +5V. Und GND an Anschluss 2. Dann funktionieren die Adapter auch
ohne OK. Auch Deine MBox2 wird weiterhin laufen.
Du machst hier aber die Widerstände ja noch größer als meine. Meinem
Verständnis nach geht in meiner Schaltung mein Transistor voll in die
SÄttigung, wenn ich 0V an R3 anlege. Dann habe ich 44Ohm
Strombegrenzung, du hingegen 440Ohm.
Da sollte doch bei meiner garantiert mehr Strom fließen und das Ding
eher durchschalten?
Die 220Ω sind der übliche Wert für diese Widerstände, allerdings an 5V.
Wenn dem murksige Interface(*) der Optokoppler fehlt, braucht es
womöglich die 5V, um zu funktionieren. Und wie Jens zeigt, wird
normalerweise auch Pin 5 per Transistor geschaltet und Pin 4 über einen
Widerstand an die 5V gehängt. Kann gut sein, dass das Ding das auch so
erwartet. Einem Optokoppler wär's natürlich egal.
* Ich würde so einen Schrott ja einfach entsorgen
Das geht schon.
Ein Vorwiderstand von 660 Ohm (3 x 220 Ohm) insgesamt schaltet die Led
im Optokoppler mit 3V und auch mit 5V.
Es soll ja für beide Teile funktionieren.
Wenn kein OK, dann ist Anschluss 5 (nicht 4) direkt an den Eingang (RxD)
vom uC des Adapters verbunden. 3V reichen aus um 5V Logik zu schalten.
Die Daten müssen also über Anschl. 5 laufen.
Einfach vertauschen geht aber auch nicht. Du müsstest es so umbauen mit
den Widerständen - das hab ich auch so gemacht und es läuft.
Oder ein zweiter Transistor ....
Am Ausgang TxD von 1.3P wird die meißte Zeit Hi sein. Die "Daten" sind
dann "Lo-Impulse" und nur wenn TxD (1.3P) Lo ist, soll ein Strom durch
den OK fließen. Wenn Hi, dann passiert nichts.
Der Adapter aber verlangt das gleiche SIgnal wie Dein 1.3P liefert -
also muss das durchgegeben werden. Mit einem Transistor allerdings würde
es invertiert sein, also Lo = Hi und umgekehrt.
Servus,
was ist eigentlich so schwer daran, sich bei der Schaltung an die
allseits bekannte (notfalls googeln) Standard-Schaltung für den MIDI Out
zu halten? So kompliziert ist die doch nicht!
Wenn man das macht, muss man nicht rätseln, warum die eigene Kreation
nicht funktioniert und muss auch nicht auf murksige Interfaces schimpfen
oder diese gar entsorgen, weil sie dann nämlich mit ziemlicher
Sicherheit auch funktionieren.
Thomas E. schrieb:> Servus,>> was ist eigentlich so schwer daran, sich bei der Schaltung an die> allseits bekannte (notfalls googeln) Standard-Schaltung für den MIDI Out> zu halten? So kompliziert ist die doch nicht!> Wenn man das macht, muss man nicht rätseln, warum die eigene Kreation> nicht funktioniert und muss auch nicht auf murksige Interfaces schimpfen> oder diese gar entsorgen, weil sie dann nämlich mit ziemlicher> Sicherheit auch funktionieren.
Sie funktioniert ja scheinbar nur mit dem Gerät nicht, welches sich
widerum nicht an den Standard hält (Optokoppler am Eingang). Ich kann
bei der im ersten Post gezeigten Schaltung nichts falsches erkennen,
denn bei einer "0" schaltet der Transistor durch und es sollte der Strom
fließen.
Wenn die Gegenseite aber 5V haben möchte und sich nicht an den
Midi-Standard hält, sehe ich das Problem eher dort.
Vermutlich würde das Interface auch nicht funktionieren, würde man
direkt an/aus schalten mit 0-3.3V. Eben wegen den 3.3V.
3,3V schalten - ich glaube schon ab ca. 0,7V sieht der uC (ATM16 z.B.)
die Sache als Hi.
Und in der Tat, der Adapter ohne OK braucht über Anschluss 5 ein Signal.
Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5
dauerhaft an GND liegt. Anschluss 5 geht im Adapter über einen
Widerstand direkt auf RxD des uC.
> ich glaube schon ab ca. 0,7V sieht der uC (ATM16 z.B.) die Sache als Hi
Nee, AVR Mikrocontroller wollen 2/3*VCC als High Pegel haben. Mit etwas
Glück genügen schon knapp mehr als 1/2*VCC. Aber sicher nicht 0,7V. Ich
kennen auch keinen anderen Mikrocontroller, bei dem das klappen würde.
Vielleicht einem einem Taschenrechner...
Jens schrieb:> Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5> dauerhaft an GND liegt
Das stimmt so nicht. 10 Ohm gegen Masse. Evtl. den Widerstand mal
erhöhen?
Muss mich korrigieren: ATMega168 schaltet in der Tat erst bei ca. 2,5V
nach Hi und bei 2V wird er Lo. Ca. Werte !!! Aber bei 3V schaltet er
sicher. Auch wenn z.B. Wid. 10K zwischen TxD des einen und RxD des
anderen uC liegen.
>>den Widerstand mal erhöhen?
es muss das Signal anliegen, nicht statisch GND. Siehe meinen Schaltplan
- habs ja gemacht und es geht.
Jan schrieb:> Jens schrieb:>> Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5>> dauerhaft an GND liegt>> Das stimmt so nicht. 10 Ohm gegen Masse. Evtl. den Widerstand mal> erhöhen?
Und dann? … kommt dort immer noch kein Signal vom µC an. Das ist
unabhängig davon, wie hoch der Widerstand ist.
Thomas E. schrieb:> Wenn man das macht, muss man nicht rätseln, warum die eigene Kreation> nicht funktioniert und muss auch nicht auf murksige Interfaces schimpfen> oder diese gar entsorgen, weil sie dann nämlich mit ziemlicher> Sicherheit auch funktionieren.
Murksige Interfaces entsorgt man, weil sie eben Murks sind. Die bleiben
Murks, auch wenn sie trotzdem funktionieren sollten. Der Optokoppler
gehört zu einem vernünftigen MIDI-Interface dazu.
Und nein, das bedeutet nicht, das man dafür dann auf der Gegenseite
murksen darf. Auch da sollte die Schaltung ordentlich aufgebaut sein.
Jan schrieb:> Jens schrieb:>> Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5>> dauerhaft an GND liegt>> Das stimmt so nicht. 10 Ohm gegen Masse. Evtl. den Widerstand mal> erhöhen?
Dein Adapter misst die Spannung an Pin 5 (mit einem hochohmigen
CMOS-Eingang), und ignoriert Pin 4. Da praktisch kein Strom fließt, ist
der Spannungsabfall über R4 ungefähr 0 V. Ein größerer Widerstand hilft
auch nicht.
Für deinen Adapter kannst du MIDI_OUT direkt mit Pin 5 verbinden.
Das funktioniert dann aber nur für diesen Adapter ohne Optokoppler; wenn
du eventuell auch andere MIDI-Geräte verwenden willst, brauchst du einen
5-mA-Treiber an Pin 5; siehe MIDI.
Wo kommt dein MIDI_OUT überhaupt her? Wenn der µC 5 mA bereitstellen
kann, brauchst du keinen Extra-Treiber; andernfalls kannst du auch mit
zwei Transistoren einen bastelen.