Convertisseur midi microtonal polyphonique Arduino (2 / 3 étapes)

Étape 2: Code

Le code de l’arduino est joint ci-dessous dans un fichier texte.

Ces valeurs doivent être personnalisés.

 #define pitchbendRange 2 // the pitchbend range in semitones #define octaveSteps 10 // the number of steps in an octave #define middleNote 60 // tune to this MIDI note - 60 is middle C (0-127) #define numVoices 16 // use this many MIDI channels (1-16) 

J’ai utilisé les valeurs indiquées dans la vidéo de démonstration. Il montre un rack Reason de Propellerhead avec 16 modules piano assignés aux 16 canaux MIDI. J’ai joué deux octaves d’une échelle de 10 TET sur un clavier commence avec la touche D ci-dessous C moyen et se termine sur la touche Bb au-dessus de c moyen.

Vous pouvez voir que chaque canal et le module sont renforcées à travers que je joue chaque note successifs. La raison pour cela est que pitchbend est un paramètre canal. Quand jouer polyphoniquement, si toutes les notes ont été envoyés à un seul canal du MIDI, puis le nouveau paramètre de pitchbend modifierait l’accordage de déjà joué mais toujours des notes de sondage. Donc je l’ai parcourir 16 canaux pour que 16 notes peuvent être joués à la fois chacun avec leurs propres valeurs pitchbend. Si vous définissez numVoices sur 1, il fonctionne très bien avec un monosynth.

Pas à pas à travers la boucle principale, l’arduino lit 3 octets--un MIDI note ON ou OFF à la fois. Ensuite, il calcule la valeur de note et pitchbend MIDI pour envoyer. Au lieu de calculer ces valeurs dynamiquement, comme je le disais plus haut je pense qu’une paire de tables de recherche pourrait être appliquée où vous précalculer les valeurs pour mapper à. Cela permettrait de mappage vers n’importe quelle échelle.

Ensuite, l’arduino vérifie si la commande est une note sur et, si oui, envoie les valeurs de note et pitchbend mappées et les incréments au prochain canal MIDI. Si la commande est une note OFF, l’arduino trouve le canal du MIDI où cette note est allumé et il s’éteint.

Profitez !

-------

Mise à jour : J’ai fait le code (v1.1 attaché) plus efficace en vérifiant si la commande est une note sur ou note OFF avant de faire le calcul.

Aussi, j’ai fait plus de recherches à l’aide de MIDI-OX et le manuel de Yamaha CP-33 dans le deuxième problème dans mes notes ci-dessous (étape 3) et trouvé qu’un flux régulier de F8 (hex) et des messages en temps réel MIDI FE (hex) sont les coupables. J’ai essayé d’écrire du code pour reconnaître rapidement et de passer comme ci-dessous, mais il semblait que l’arduino ne pouvait pas suivre. J’ai été en mesure d’obtenir une note par le biais de l’arduino seulement toutes les quelques secondes ou plus.

 do { command = Serial.read(); } while (command == 248 || command == 254); 

Articles Liés

Contrôle MIDI s’allume Arduino

Contrôle MIDI s’allume Arduino

Salut, ce post est créé par Jesus Alberto Cejas et Pablo Javier Ruiz pour vous présenter notre projet sur un clavier musical, belles lumières et Arduino.Ce projet prévoyait que « Creative Electronics », une électronique de Beng génie 4ème module de l
Pad MIDI XY avec Arduino et TFT

Pad MIDI XY avec Arduino et TFT

Il y a quelques semaines, quand j'ai regardé après quelques idées/modules/boucliers pour démarrer de nouveaux projets/expériences avec des microcontrôleurs, que j'ai trouvé quelque chose d'intéressant qui cadrerait parfaitement dans mon projet plus â
Super Duper Microtonal MIDI convertisseur

Super Duper Microtonal MIDI convertisseur

J'ai fait ce convertisseur de MIDI microtonal Arduino basé comme mon premier projet Arduino :J'ai voulu jouer les échelles microtonales avec mes claviers MIDI, alors j'ai fait cet appareil arduino basé qui lit dans les notes MIDI et envoie des emplac
Arduino personnalisé MIDI Controller

Arduino personnalisé MIDI Controller

Bonjour et Bienvenue à cette instructable sur comment construire un contrôleur MIDI USB personnalisé, bon marché et facile, basé sur Arduino. Les meilleures nouvelles : aucun souci avec interfaces USB-MIDI ou outils logiciels tels que MIDI sans poil,
Arduino, capteurs et MIDI

Arduino, capteurs et MIDI

Maintenant que vous êtes au courant sur l'utilisation des intrants et des extrants de l'Arduino, ce Instructable vous donnera tout ce dont vous avez besoin pour commencer à utiliser des capteurs pour déclencher des notes MIDI d'Arduino. Ce poste est
Arduino MIDI Controller

Arduino MIDI Controller

Un contrôleur MIDI est toute pièce d'équipement qui génère et transmet les données MIDI aux périphériques compatibles MIDI. En bref, si vous avez des boutons de votre contrôleur MIDI, vous pouvez programmer ces boutons à n'importe quel son que vous s
Percussions MIDI gant en utilisant Arduino et capteurs de lumière

Percussions MIDI gant en utilisant Arduino et capteurs de lumière

je vais vous décrire un plaisir et un moyen facile de créer votre propre expression sonore MIDI activé gant sans dépenser beaucoup d'argent sur les Interfaces MIDI ou coûteux capteurs.N'hésitez pas à me contacter directement par mail si vous aimez ou
Interface Arduino USB MIDI

Interface Arduino USB MIDI

Il y a quelques semaines j'ai commencé à travailler sur un contrôleur MIDI en utilisant Arduino et ATmega32. Je n'ai pas rempli prévu encore. Il est en cours d'élaboration.Vous pouvez lire l'ensemble histoire ici http://openhardware.ro/arduino-usb-mi
MIDI à ARDUINO

MIDI à ARDUINO

Cela fait déjà partie de certains de mes Instructables, mais sans doute difficile à trouver par l'intermédiaire de la fonction de recherche.Il est utilisé dans les Instructables suivants :Micro Timelapse Dolly avec DC motors :Le chariot de Timelapse
Séquenceur MIDI de vieille école Arduino

Séquenceur MIDI de vieille école Arduino

à l'aide d'un standard de l'ordinateur monocarte Arduino et un Conseil de « bouclier », ce projet crée un séquenceur MIDI capable d'enregistrer et de lire des séquences de notes MIDI.  Il est semblable à la vieille école séquenceurs en ce que la séqu
ARDUINO MIDI quatre lignes MOTION CONTROL

ARDUINO MIDI quatre lignes MOTION CONTROL

Ce Instructable sera sur la création d'une unité de contrôle de quatre lignes cablecam/motion.Le principe est que rien de nouveau voir EACMEC.Sa basés autour de quatre moteurs/treuils et une unité de contrôle qui commande les moteurs.COMPOSANTS DE BA
Arduino MIDI-en bouclier

Arduino MIDI-en bouclier

cette instructable montre comment générer un bouclier pour connecter des périphériques qui envoient des signaux MIDI (par exemple un intéressant) à un Arduino.Le schéma de base provient de : http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1187962258/
Arduino DIY base MIDI Foot Controller

Arduino DIY base MIDI Foot Controller

J'ai eu envie d'essayer une arpenteuse de la guitare pendant un certain temps, mais je n'aime pas l'idée de dépenser de l'argent sur une pédale spécifique du boucleur quand je peux utiliser un ordinateur pour cela et depuis j'ai appris l'arduino pour
Makey contrôleur MIDI Makey

Makey contrôleur MIDI Makey

Makey makey est un microcontrôleur qui agit comme un clavier quand il est branché sur votre ordinateur. J'ai reprogrammé il afin qu'il envoie les notes midi. Pourquoi ? Parce que lorsque vous utilisez un clavier pour contrôler les choses la fenêtre q