Ich habe neulich einen Satz Optokoppler bestellt und war aufgeregt, als sie endlich ankamen. Leider habe ich ein bisschen Probleme, sie zum Laufen zu bringen. Einfache Ein-/Aus-Aufgaben funktionieren gut, aber wenn ich versuche, damit MIDI-Daten an ein Arduino Uno zu senden, bekomme ich keine Antwort. Ich vermute, dass das Problem in der Art des Optokopplers liegt, den ich verwende. Während die meisten Projekte im Internet den 6N138 zu verwenden scheinen, dachte ich, ich könnte ihn durch den ähnlichen 6N38 ersetzen. Momentan denke ich, dass das Problem die Schaltzeit ist. Der 6N138 ist ein Dioden-Optokoppler, während mein 4N38 ein Transistor-Optokoppler ist. Aber ohne ein Oszilloskop habe ich keine einfache Möglichkeit, sicher zu sein. Um die Dinge zu verkomplizieren, kann ich nicht viel findenSchaltung mit dem 4N38 trotz seiner Ähnlichkeit mit anderen Chips. Kann man mit diesem Chip MIDI-Daten übertragen? Soll ich einfach ein anderes kaufen?
HINWEIS: VCC beträgt 5 V.
EDIT: Teilenummer korrigiert. BEARBEITEN: Spezifität. EDIT: Schema hinzugefügt.
R2 ist zu groß. Die Spezifikation gibt 220 Ω an, um 5 mA zu erhalten; kleinere Ströme machen den Ausgangstransistor nur schwächer.
R3 ist falsch. Ein Basis-Emitter-Widerstand könnte verwendet werden, damit die Ladung beim Ausschalten schneller von der gesättigten Basis entfernt werden kann. Ein solcher Widerstand fügt jedoch auch eine Mindestschwelle für den Basisstrom hinzu (weil kein Strom in die Basis fließt, bis der Spannungsabfall über dem Widerstand größer als die Basis-Emitter-Spannung ist). Dies wäre bei einem Darlington-Optokoppler wie dem 6N138 aufgrund seiner hohen Verstärkung akzeptabel, aber bei einem einfachen Fototransistor ist dieser Strom so gering, dass es unwahrscheinlich ist, dass sich der Transistor jemals einschaltet. Entfernen Sie R3 ganz oder versuchen Sie es mit einem großen Wert wie 1 MΩ und gehen Sie davon herunter.
Der Pull-Up-Widerstand R1 sieht OK aus. Aber vielleicht möchten Sie einen kleineren Wert wie 100 Ω ausprobieren, nur um sicherzugehen.
Bei 31250 Baud hat ein Bit eine Länge von 32 µs. Für einen zuverlässigen Betrieb müssen die Anstiegs-/Abfallzeiten des Ausgangs Ihres Optokopplers viel kürzer sein; die MIDI-Spezifikation empfiehlt weniger als 2 µs.
Ein einfacher Transistor-Optokoppler ist wahrscheinlich nicht schnell genug.
Der 6N138 verwendet eine Fotodiode, aber sein Darlington-Ausgang ist zu langsam für MIDI, es sei denn, Sie fügen weitere Komponenten hinzu (z. B. einen Basis-/Emitterwiderstand), um ihn zu beschleunigen.
Der beste zu verwendende Optokoppler ist ein Hochgeschwindigkeits-Optokoppler mit einem Logikausgang. Verwenden Sie einfach die aus der MIDI-Spezifikation (Anmerkung: "PC900" ist Sharps Schreibweise für "H11L1", die von vielen Herstellern hergestellt wird).
Dies ist vielleicht nicht die Antwort, nach der Sie suchen, aber nachdem Sie persönlich versucht haben, eine Menge Sachen mit MIDI und Arduino zu machen, sollten Sie sich Teensy ansehen, wenn Sie etwas Ernsthaftes damit machen wollen. Teensy funktioniert mit den meisten MIDI-Sachen "out of the box"
Nick Johnson
Ignacio Vazquez-Abrams
Patagonische Ratte
Patagonische Ratte
Andi aka
Nick Johnson
Andi aka
Patagonische Ratte
Andi aka
Patagonische Ratte