Electronique > Réalisations > Interfaces > Interfaces MIDI > Interface MIDI 013

Dernière mise à jour : 03/06/2012

Présentation

Cette interface MIDI dispose d'une entrée MIDI IN et d'une sortie MIDI OUT.

interface_midi_013_pcb_3d_a

Elle permet de "ralentir" un rythme MIDI composé de messages MIDI Timing Clock (MIDI sync 24 PPQN, octet de statut $F8), en n'en laissant passer qu'un seul parmi un nombre choisi par l'utilisateur. Ce système a été conçu pour la synchronisation d'un Korg Monotribe (un peu modifié pour profiter du MIDI) sur un maître MIDI trop pressé. Le retard (temps de transit entre entrée MIDI IN et sortie MIDI OUT) introduit par ce "ralentisseur d'horloge" est de quelques centaines de us (environ 0,5 ms).

Schéma

Le coeur du montage est un microcontrôleur PIC 16F628A. Le circuit présente de fortes ressemblances avec l'interface MIDI 008, qui fonctionne globalement sur le même principe. Une alimentation +5 V est requise pour faire rouler la machine.

interface_midi_013

Fonctionnement général
Les données MIDI qui arrivent à la queue leu leu sur l'entrée MIDI IN sont analysées octet par octet.
- si l'octet reçu est $F8, le logiciel regarde le facteur de division choisi par l'utilisateur, et décide si oui ou non il faut le filtrer (l'empêcher de sortir sur la prise MIDI Out).
- si l'octet reçu est diférent de $F8, il est transmis sans autre forme de procès (pas de filtrage).

Circuit d'horloge / base de temps
Les lignes RA7/OSC1 et RA6/OSC2 du PIC sont utilisées pour y connecter un quartz de 8 MHz avec ses deux petits condensateurs céramiques de faible valeur. Vu le travail demandé au logiciel, on pourrait aussi se contenter d'un quartz de 4 MHz. 

Entrée MIDI
L'entrée MIDI est composée de l'optocoupleur U2 raccordé sur la prise DIN 5 broche J1, via une résistance de limitation de courant (R1) et une diode (D1) protégeant l'optocoupleur en cas d'inversion des deux fils d'entrée de la prise DIN (broches 4 et 5). La sortie de l'optocoupleur (type NPN) permet de récupérer le signal MIDI au format TTL, grâce à la présence de la résistance R2 reliée au +5 V. Les données MIDI ainsi mises en forme aboutissent à l'entrée RB1/RX du PIC.

Sortie MIDI
La sortie MIDI (broche RB2/TX du PIC) délivre brièvement une note MIDI C3 (Do3) lors de son initialisation, ce qui permet dès la mise sous tension de savoir si tout démarre bien. Après l'initialisation, la sortie MIDI laisse sortir les infos MIDI qui n'ont pas été filtrées.

Choix du facteur de division
Le facteur de division dépend de la position des microswitches (interrupteurs miniatures) DSW1 connectés sur les broches RA0 à RA3 du PIC.

Division parRA3RA2RA1RA0
10000
10001
20010
30011
40100
50101
60110
70111
81000
91001
101010
111011
121100
131101
141110
151111

Si par exemple vous voulez diviser par deux la fréquence des messages d'horloge ($F8), vous devez mettre en position ON l'interrupteur relié sur la broche RA1 du PIC, les autres interrupteurs devant rester à OFF (entrée RA1 à l'état logique haut et entrées RA0, RA2 et RA3 à l'état logique bas). Pour une division par quatre, seul l'interrupteur connecté sur RA2 doit être positionné à ON. A priori, on choisira plus souvent un facteur de division multiple de deux (2, 4, voire 8), mais disons qu'il peut être intéressant d'expérimenter avec des horloges qui rendent fous les musiciens. Donc facteur de division possible entre 1 et 15. Le facteur de division est bien de 1 quand les entrées RA0 à RA3 du PIC sont toutes à l'état logique bas (0).

Alimentation
Un régulateur de tension de +5 V est prévu directement sur le circuit (U3), ce qui permet d'alimenter cette interface / filtre avec n'importe quel bloc d'alimentation secteur délivrant une tension comprise entre +9 V et +15 V. La consommation est assez faible pour se permettre d'utiliser un régulateur de tension "miniature" de type LM78L05 (100 mA max), et ce dernier n'a pas besoin de dissipateur thermique. La diode D2 n'est pas indispensable mais est très vivement conseillée, les blocs secteurs du commerce permettant parfois d'inverser la polarité de la tension de sortie. Il serait dommage de griller le microcontrôleur pour une bête inversion qui n'arrive qu'aux autres. Si vous disposez déjà d'une alimentation de +5 V, alors vous pouvez supprimer tous les composants relatifs à cette section, à savoir D2, C3, C4 et U3.

Choix d'autres optocoupleurs

Il est possible d'utiliser d'autres optocoupleurs pour l'entrée MIDI, voir page Interfaces MIDI pour plus de détails. 

Le brochage des prises MIDI

Câblage valable pour les prises MIDI IN, MIDI OUT et MIDI THRU.

midi_din_cablage_001

La borne 2 est reliée à la masse au niveau des sorties mais pas au niveau des entrées, pour éviter toute boucle de masse entre équipements.

Logiciel du PIC

Les fichiers assembleur (*.asm) et binaire compilé (*.hex) sont disponibles dans l'archive dont le lien suit. 
Interface MIDI 013 - PIC 16F628A - 03/06/2012
Si vous souhaitez recevoir par la poste un PIC préprogrammé et prêt à utiliser, merci de consulter la page PIC - Sources.

Circuit imprimé

Réalisé en simple face.

interface_midi_013_pcb_composants

Pas de strap, mais quatre résistances CMS soudées côté cuivre (R5 à R8).

interface_midi_013_pcb_3d_b

Typon aux formats EPS, PDF et Bitmap 600 dpi

Les connecteurs DIN femelle chassis sont montés directement sur le circuit imprimé. Il serait possible de réduire les dimensions du circuit imprimé en plaçant sur ce dernier deux ou trois points de connexion à câbler sur des prises DIN fixées "indépendament" sur le boîtier.

Historique

03/06/2012
- Première mise à disposition.