MIDI IN: de nombreux circuits


9

Je construis une entrée MIDI sur un port série RX (pour Raspberry Pi, ou Arduino, ou autre chose ...) en utilisant un optoisolateur 6N138.

Mais je trouve de nombreux circuits différents, je ne sais pas pourquoi ils sont si différents, et lequel choisir:

Est-ce correct?

  1. Tout d'abord, celui-ci avec une résistance de 470 Ohm et 1KOhm (source: electro-tech-online.com )

  2. Un autre, avec respectivement une résistance de 1KOhm et 3,3KOhm


(source: dernulleffekt.de )

  1. L'officiel midi.org, avec différentes valeurs de résistance, mais pas basé sur 6N138 ...

http://www.midi.org/images/midihw.gif

Dernière chose (peut-être hors sujet ici): Si je veux me connecter au RX du GPIO du Raspberry Pi, dois-je utiliser 3,3 V pour l'optoisolateur au lieu de 5 V, pour éviter de rompre avec le RX du GPIO?


2
Voici un article de blog détaillé résumant toutes les informations d'ici et d'autres endroits que j'ai trouvés: Le guide définitif de MIDI IN avec le GPIO du Raspberry Pi
Basj

Réponses:


10

Les optocoupleurs avec sortie Darlington (comme le 6N138) sont très lents, surtout lorsque le transistor de sortie doit s'éteindre.

Pour obtenir un temps de montée suffisamment rapide du signal de sortie, la base du transistor de sortie a besoin d'une connexion à la masse (à travers une résistance) afin que la charge de base puisse être enlevée rapidement. Toute valeur entre 4,7 kΩ et 10 kΩ devrait fonctionner correctement.

De plus, le temps de montée du signal de sortie dépend également de la valeur de la résistance de pull-up (R1 ci-dessous). Des valeurs plus petites entraînent des temps de montée plus rapides, mais de très petites valeurs augmentent la consommation d'énergie lorsque l'optocoupleur réduit la sortie. En pratique, environ 1 kΩ est couramment utilisé.

Le 6N138 a besoin d'une alimentation 5 V et le Raspberry Pi ne fonctionne pas avec des signaux 5 V. Cependant, une sortie à collecteur ouvert peut être utilisée pour traduire le niveau du signal; connectez simplement la résistance de rappel à 3,3 V à la place, comme ceci:

6N138 avec décalage de niveau

Si possible, oubliez le 6N138 et utilisez un optocoupleur avec une sortie numérique (comme le Sharp PC900 de la spécification ou le H11L1); si vous avez besoin de gagner de l'espace, utilisez une puce SO-5 comme la TLP2361 (qui a une sortie CMOS, donc elle n'a pas besoin de résistance de pull-up).


Merci pour cette réponse détaillée! Juste pour être sûr: you see that you should not go higher than about 200 Ωparlez-vous de la résistance qui a été réglée sur 470Ω en 1., 1KΩ en 2. et 280Ω en 3.? Je peux donc tout prendre entre 200 Ω et 500 Ω, non? Sidenote: J'ai quelques 6N138 ici, donc j'aimerais l'utiliser, au lieu d'acheter un autre composant.
Basj

Cela fonctionne avec vos schémas! Ouais! Puis-je alimenter le 6N138 avec 3,3 V @CL. ? Ou cela ne fonctionnerait-il pas du tout?
Basj

La fiche technique ne le permet pas. Je ne sais pas si cela fonctionnerait avec votre puce.
CL.

Puis-je essayer d'alimenter avec 3,3 V ou cela pourrait-il endommager quelque chose? (J'imagine que ce ne serait pas)
Basj

Voir les cotes maximales absolues dans votre fiche technique.
CL.
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.