Electronique > Réalisations > InterfacesInterfaces MIDI > Contrôleur MIDI 006 [Pro]

Dernière mise à jour : 11/01/2015

Présentation

Ce contrôleur MIDI, réalisé pour usage scène, permet d'envoyer des messages "Program Change" à l'aide d'un large clavier de commande. 

controleur_midi_006_pcb_3d_a

Elaboré sur la base d'un PIC 18F45K22, il dispose d'un afficheur numérique deux digits et d'un clavier de commande lumineux. L'utilisateur peut choisir une banque et envoyer le Program Change de son choix, les derniers boutons-poussoirs pressés s'allument et restent allumés pour rappeler le dernier message envoyé.

Avertissement

Ce projet fait suite à une demande pro, le schéma détaillé et le logiciel du PIC ne sont pas disponibles sur ce site.

Schéma

Le circuit est relativement simple si on s'affranchit de la complexité apparente.

controleur_midi_006
(schéma volontairement flouté)

Principe général
Le logiciel du PIC scrute (scanne) en permanence le clavier composé d'une matrice de 16 boutons-poussoirs câblés en matrice 4x4. En usage "Live", la pression d'un bouton-poussoir active la LED correspondante, elle-même placée dans le bouton-poussoir. Si le bouton pressé est un bouton de sélection de banque, la LED correspondante s'allume mais aucun message MIDI n'est envoyé. Si le bouton pressé est un bouton de sélection de programme, la LED correspondante s'allume et le message MIDI idoine est envoyé.
Remarque : une entrée MIDI est prévue mais n'est pas utilisée dans le cas présent.

Coeur du montage
Le contrôle général des opérations est confié à un PIC 18F45K22. C'est lui qui assure la scrutation du clavier matricé, l'affichage multiplexé des deux digits numériques et l'envoi des messages MIDI. La fréquence de cadencement est fixée à 12 MHz, valeur suffisante pour assurer sans heurt les diverses opérations.

Clavier lumineux
Les LED du clavier lumineux sont de type simple (couleur unique) et sont pilotées par des registres à décalage 74HC595. Cette solution permet d'ajouter, si nécessaire, d'autres éléments d'affichage non prévus au départ. Cela permet également de remplacer les registres à décalage par un autre type de circuit de commande, par exemple un PCA9685 pour le pilotage de 16 LED avec effets de graduation (PWM 12 bits sur 16 canaux). Pour l'usage initial, nos registres à décalage suffisent amplement, même s'il faut attaquer des LED tricolores RVB (dans ce cas il faut ajouter trois registres à décalage 74HC595 en série avec les deux existants).

Programmation du PIC
Les broches RB6 (PGC), RB7 (PGD) et MCLR du PIC sont monopolisées pour assurer la programmation du PIC "in situ", sans le retirer de son support. C'est la raison d'être du connecteur 5 points ICSP.

Alimentation
L'ensemble se contente d'une tension fixe de +5 V capable de délivrer un courant d'au moins 150 mA. Les afficheurs numériques étant multiplexés, un seul est allumé à la fois, et côté LED on n'en a toujours deux d'allumées en même temps, au maximum.
Remarque : bien que je ne le conseille pas, le +5 V peut être extrait d'une prise USB d'ordinateur, si on se contente d'un courant max de 5 mA pour chaque segment d'afficheur et chaque LED.

Prototype

Réalisé avec platine de développement EasyPIC7.

Logiciel du PIC

Demande Pro, logiciel non disponible sur ce site.

Circuit imprimé

Non réalisé, vue 3D pour aperçu des composants utilisés (les 14 LED du clavier lumineux ne sont évidement pas disposées ainsi).

Historique

11/01/2015
- Première mise à disposition.