Dans cette vidéo, nous allons jeter un oeil
au circuit MIDI entrée et sortie.
Nous analyserons comment ça marche
et comment connecter à une carte Arduino.
MIDI signifie Musical Instrument Digital Interface (Interface Numérique pour Instrument de Musique).
C'est le protocole standard pour la communication
entre instruments de musique électroniques
depuis son introduction en 1983.
Il a célébré ses 35 ans et c'est super vieux.
Les appareils MIDI sont reliés par des câbles à 5 broches
qui peuvent transmettre des informations telles que
les hauteurs de notes, la vélocité, bends et messages de contrôle.
Maintenant regardons un byte de données MIDI.
Un signal MIDI est une onde numérique
qui varie entre 5 et 0 V
5 V est la valeur haute et 0 V la valeur basse.
En électronique numérique, le signal haut est lu comme un 1
et le signal bas est lu comme un 0.
Quand le système MIDI n'envoie pas de signal,
il garde un signal constant à 5V.
Quand l'instrument est prêt à envoyer un message,
il met le niveau à 0V.
Ça s'appelle le start bit
et ça dit à l'instrument récepteur de se tenir prêt à recevoir le message.
L'instrument transmettra alors 8 bits de données avec le signal
Au final, il remettra le signal à 5V
pour terminer le message.
Ça s'appelle le stop bit.
Ce message en particulier dit à l'instrument connecté
de jouer une note.
Les 4 premiers bits du message, 1 0 0 1
sont un envoi MIDI qui signifie 
"Note on"
Les 4 bits suivants disent à l'instrument récepteur
pour quel canal la commande est destinée.
Si l'instrument récepteur n'est pas 
paramètré pour ce canal,
il ignorera simplement le message.
Maintenant, regardons les composants réels 
d'un circuit MIDI
La plupart des circuits comprend des composants basiques :
résistances, diodes.
Même les débutants devraient arriver
 à en reconnaître la plupart.
Le composant que (???) est une puce,
 l'optocoupleur 6N138.
Regardons ça plus en détail.
L'optocoupleur 6N138 est une puce à 8 broches
qui protège et isole électriquement
 l'appareil MIDI de tout ce qui y est branché.
Ce composant est constitué d'une LED
 comme source lumineuse,
et un phototransistor qu'on peut se figurer
comme un détecteur de lumière
et un interrupteur.
La source lumineuse est du côté entrée du circuit
et elle est allumée et éteinte 
par les données MIDI entrantes.
Le phototransistor est du côté sortie du circuit
et met l'interrupteur sur ON quand il détecte de la lumière.
L'astuce est que l'entrée et la sortie 
ne sont pas connectées électriquement.
L'information est uniquement transmise par la lumière.
Ça fait que, même si on a une tension importante 
en entrée dans le câble MIDI,
elle ne sera pas transférée au reste de l'instrument.
Voici un dessin de ce qui se passe en vrai dans la puce.
Du côté gauche, la LED d'entrée
et le phototransistor est à gauche.
Maintenant, regardons ce schéma.
Nous commencerons par regarder
 le circuit sortie MIDI (OUT)
C'est un circuit très simple a vec 
une prise MIDI et une résistance de 220Ω.
Ce schéma montre la broche 4 de la prise MIDI
reliée à une source continue de 5V au travers d la résistance de 220Ω.
La broche 5 de la prise MIDI est reliée à la fiche transmission (TX) de la carte Arduino
Enfin, la broche 2 de la prise MIDI est reliée à la masse.
Elle sera reliée au blindage du câble MIDI 
 une fois branché.
Il faut se souvenir que la fiche TX peut être à 0 ou 5V suivant le message MIDI transmis.
Pour analyser le circuit, il faut regarder
le schéma complet.
Donc, connectons le circuit MIDI OUT au circuit MIDI IN d'un autre instrument.
Les lignes en pointillés
représentent les câbles MIDI.
Concentrons-nous sur le circuit IN.
Nous nous arrêterons à l'entrée de l'optocoupleur.
Nous regarderons le circuit OUT un peu plus tard.
Cette partie du circuit comprend une prise MIDI en entrée,
une résistance de 220Ω, une diode pour le signal
et la LED de l'optocoupleur.
Un point important à noter est que la broche 2 de la prise MIDI n'est pas reliée à la masse.
C'est fait pour éviter les ronflettes de masse 
entre deux instruments.
Pour comprendre le circuit,
il faut comprendre comment fonctionne la diode.
La diode a une porte (gate) 
qui laisse passer le courant dans un seul sens
La diode est un composant polarisé avec un côté +, l'anode
et un côté -, la cathode.
Quand il y a plus de tension du côté anode +, 
le courant passe dans ce sens
S'il y a plus de tension du côté cathode -, le courant est bloqué.
Les diodes ont une caractéristique importante : 
la tension de seuil, forward voltage (Vf)
L'anode + doit être supérieure de cette valeur
pour que le courant passe.
Dans notre circuit d'entrée MIDI, la diode a une Vf de 0.7V
La LED de l'optocoupleur a une Vf de 1.3V.
Maintenant qu'on a vu tous les composants, 
on peut analyser le circuit.
La première chose à noter est que tout le circuit est le circuit complet est relié à l'instrument émetteur.
Aucune de ses parties n'est reliée à l'instrument récepteur.
Rappelons-nous de ce qui a été dit sur la broche TX de l'Arduino 
et son signal à 0 ou 5V.
Regardons d'abord ce qui se passe
quand la broche TX est sur 5V.
Quand le signal MIDI met la broche en valeur haute, il y a une tension de 5V.
Cette tension est transmise par le câble
 à l'anode de la petite diode de signal.
Elle arrive également à la cathode de la LED.
Il y a toujours une tension de 5V 
transmise par l'autre broche
On peut noter qu'il n'y a pas de différence de tension entre les pôles des 2 diodes.
En d'autres termes, les diodes sont fermées et aucun courant ne passe.
Regardons ce qui se passe quand le signal MIDI est dans la valeur basse.
Le fil à 5V reste à 5V
mais la broche TX est en valeur basse, à 0V.
Ça s'apparente à la masse.
On voit que les diodes ont maintenant
une différence de tension entre leurs pôles.
La petite diode de signal a plus de tension sur la cathode que sur l'anode
et si on se souvient de ce qui a été dit sur les diodes,
on sait que le courant ne passe pas.
En même temps, la LED a 5V en plus
sur l'anode que sur la cathode
Vu que sa Vf est de 1.3V,
c'est plus que nécessaire pour l'allumer.
Dès que la LED s'allume, le courant passe.
Il passe de la source 5V à travers les résistances
et la LED pour arriver à la fiche de la masse.
Maintenant, il faut calculer la tension qui passe dans le circuit.
Il y a une règle à connaître :
quand une diode est sur ON, elle soustrait sa tension de seuil Vf à la tension totale.
On a dit tout à l'heure que la LED avait une Vf de 1.3V.
On fait donc 5 - 1.3 = 3.7V
, tension qui reste pour le circuit.
Maintenant, on peut utiliser la loi d'Ohm
 pour calculer l'lintensité dans le circuit.
Elle dit que I = UR avec I pour l'intensité,
U pour la tension et R pour la résistance
On sait déjà que la tension globale du circuit est de 3.7V.
On trouve la résistance totale du circuit, 440Ω.
On divise 3.7 par 440 et on trouve 0.0084A ou 8.4mA.
Si on regarde les spécifications de la LED,
 on voit que l'intensité maximale est de 20mA
et que 8.4mA est moins que demandé.
On peut se demander à quoi sert la petite diode de signal
qui n'a rien fait pour l'instant.
Elle est là en tant que protection
et ne rentrera en jeu qu'en cas de problème.
Imaginons qu'on a un câble défectueux
avec les fils inversés.
Si on n'avait pas la petite diode de signal,
quand la broche TX est en valeur basse,
on aurait 5V à la cathode de la LED
alors que l'anode est à la masse.
Comme on le sait, c'est l'inverse
 de ce qu'il faut pour ouvrir la LED.
Si on regarde les spécifications de la LED, on voit que la tension maximale en sens inverse est de 5V.
C'est une mauvaise idée de faire travailler un composant électronique à ses limites.
L'optocoupleur est une pièce fragile qu'on peut vite abîmer dans ces conditions.
Remettons la petite diode de signal dans le circuit.
Elle a maintenant la bonne tension pour s'ouvrir.
Elle a une Vf de 0.7V
et comme dit, une diode soustrait sa Vf à la tension globale.
Notons que la LED est en parallèle avec cette diode.
Maintenant, au lieu d'envoyer 5V, ce qui est dangereux,
elle enlève 0.7V
C'est bien en dessous de la valeur maximale
et la LED est à l'abri.
Bon, reprenons le circuit en entier
et continuons l'analyse.
Nous regardons maintenant
le phototransistor de l'optocoupleur
et comme dit précédemment,
il s'ouvre quand la LED est allumée.
Une fois que le transistor est allumé,
il laisse le courant le traverser.
Son boulot est de relier
la résistance de 220Ω à la masse.
On peut maintenant représenter le courant qui passe
de la résistance à la masse.
Regardons maintenant le fil de réception, reliée à la broche RX de l'Arduino.
On peut remarquer qu'il est branché 
à la sortie de la résistance de 220Ω
Comme on l'a vu, ce point sera à la masse 
quand le transistor sera ouvert.
L'Arduino prendra ça pour un niveau bas.
Regardons ce qui se passe 
quand le phototransistor est sur ON.
Quand ça arrive, le courant ne peut pas passer 
à travers le transistor.
Aucun courant signifie aucune tension envoyé dans la résistance de 220Ω.
Ça entraînera une tension de 5V sur la broche RX, 
interprétée comme un niveau haut (5V)
Résumons tout le propos :
quand le signal MIDI met le signal sur bas (0V),
le courant de 5V fait s'allumer la LED.
Ça ouvre le phototransistor qui laisse le courant passer
de la source 5V vers la résistance et la broche RX qui lit ça comme un état bas car elle est à la masse.
En gros, un signal bas en TX entraîne un signal bas en RX
À l'inverse, si la broche TX est dans l'état haut,
aucun courant ne passe dans la LED de l'optocoupleur.
Le transistor se ferme et ne laisse pas le courant passer.
Si le courant ne passe pas, 
la broche  RX est à 5V
et ça sera lu comme un signal haut par l'Arduino.
Un signal haut en TX a pour conséquence
un signal haut en RX.
On a maintenant une bonne vision du circuit.
On peut se demander à quoi sert 
la seule partie du circuit dont on n'a pas parlé,
qui est cette résistance de 4.7kΩ.
Si on recherche sur Internet les versions du circuit d'entrée MIDI,
en particulier celles qui utilisent l'optocoupleur 6N138,
on verra que certaines comprennent ce composant et d'autres non.
Donc que fait-il exactement ?
Si on regarde les spécifications, on voit que (???)
Ça a pour effet d'accélérer la fréquence d'allumage et d'extinction du phototransistor.
Regardons pourquoi c'est important.
Quand un signal traverse un composant, 
il y a un léger délai (delay).
Cette latence entre le signal d'entrée et de sortie
s'appelle le délai de propagation.
Dans un circuit MIDI, l'optocoupleur est 
la principale source de cette latence
et les spécifications MIDI suggèrent de garder l'état bas pendant 2 ms.
En gardant à l'esprit le délai de propagation, regardons à l'oscilloscope
la forme d'onde en entrée et en sortie.
Sur ces images, le signal entrée est en bas et en bleu,
le signal sortie en haut et en jaune.
La première chose à remarquer est que
la crête de début de signal de sortie
est beaucoup plus prononcé avec la résistance de 4.7kΩ.
En zoomant plus, on voit très bien
le délai de propagation.
Si on utilise le (???) de l'oscilloscope, on voit que le délai passe de 2.7 à 1.7ms quand on a la résistance.
Cette résistance apporte donc un gros bénéfice au circuit.
On a maintenant une bonne compréhension du circuit 
et de son fonctionnement.
Amusez-vous à mettre du MIDI à vos prochains projets.
Allez sur notesandvolts.com pour d'autres projets et tutoriels, et merci d'avoir regardé cette vidéo.
