DIY : Controller les changements de son d'un ordinateur en Midi par un systeme implantable dans une guitare

image principale DIY : Controller les changements de son d'un ordinateur en Midi par un systeme implantable dans une guitare

Difficulté:

Comment, sur scène, changer de son de synthé à la main quand on a une guitare synthé et que les pieds sont déjà occupés avec les changements de son de guitare ?

Matériel :

Budget : Non défini

Etape 1 : Création de plaque qui sera collé sur la guitare : 1 fichier de FAO

Etape 2 : Création de plaque qui sera collé sur la guitare : 2 Fabrication

Etape 3 : Création de plaque qui sera collé sur la guitare : 3 perçage

Etape 4 : Création de plaque qui sera collé sur la guitare : 4 soudure des boutons poussoir puis limage des noudures

Etape 5 : Création de plaque qui sera collé sur la guitare : 5 mise en place du double faces

Etape 6 : Vu de l'autre coté

Etape 7 : Système complet

Etape 8 : Vu de l'interieur de la guitare : implantation de l'Arduino Nano

Etape 9 : Prototype sur plaque lab

Etape 10 : Le titre de votre étape ici

Etape 11 :

Etape 12 :

Sources :

#include #include #include #include #include MIDI_CREATE_INSTANCE(HardwareSerial,Serial, midiOut); // créé un objet MIDI appelé midiOut int Bp0; int Bp1; int Bp2; int Bp3; int Bp4; int Bp5; int Flag0 = 0; int Flag1 = 0; int Flag2 = 0; int Flag3 = 0; int Flag4 = 0; int Flag5 = 0; int Bank = 0; int PrevBp = 26; void setup() { Serial.begin(31250); // affichage midi mode //Serial.begin(9600); // mode moniteur serie, no midi } void loop() { Bp0= analogRead (A2); Bp1= analogRead (A3); Bp2= analogRead (A4); Bp3= analogRead (A5); Bp4= analogRead (A6); Bp5= analogRead (A7); // CAS 1 BANK INACTIF if ( Bp0>=500 && Flag0==0 && Bank==0) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(20,127,1); // send a MIDI CC 20, 127 = velocity, 1 = channel //Serial.write("1"); //PrevBp=20; Flag0=1; Flag1=0; Flag2=0; Flag3=0; Flag4=0; Flag5=0; } if ( Bp1>=500 && Flag1==0&& Bank==0) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(21,127,1); // send a MIDI CC 21 = note, 127 = velocity, 1 = channel //Serial.write("2"); //PrevBp=21; Flag0=0; Flag1=1; Flag2=0; Flag3=0; Flag4=0; Flag5=0; } if ( Bp2>=500 && Flag2==0&& Bank==0) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(22,127,1); // send a MIDI CC -- 22 = note, 127 = velocity, 1 = channel //Serial.write("3"); PrevBp=22; Flag0=0; Flag1=0; Flag2=1; Flag3=0; Flag4=0; Flag5=0; } if ( Bp3>=500 && Flag3==0&& Bank==0) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(23,127,1); // send a MIDI CC -- 23 = note, 127 = velocity, 1 = channel //Serial.write("4"); PrevBp=23; Flag0=0; Flag1=0; Flag2=0; Flag3=1; Flag4=0; Flag5=0; } if ( Bp4>=500 && Flag4==0&& Bank==0) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(24,127,1); // send a MIDI CC -- 24 = note, 127 = velocity, 1 = channel //Serial.write("5"); //PrevBp=24; Flag0=0; Flag1=0; Flag2=0; Flag3=0; Flag4=1; Flag5=0; } if ( Bp5>=500 && Flag5==0 && Bank==0) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(31,127,1); // send a MIDI CC -- 31 = note, 127 = velocity, 1 = channel //Serial.write("Bank1"); //PrevBp=25; Flag0=0; Flag1=0; Flag2=0; Flag3=0; Flag4=0; Flag5=1; Bank=1; // activation de la banque 1 } // CAS 2 BANK ACTIF if ( Bp0>=500 && Flag0==0 && Bank==1) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(25,127,1); // send a MIDI CC 25, 127 = velocity, 1 = channel //Serial.write("6"); //PrevBp=25; Flag0=1; Flag1=0; Flag2=0; Flag3=0; Flag4=0; Flag5=0; } if ( Bp1>=500 && Flag1==0 && Bank==1) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(26,127,1); // send a MIDI CC 26 = note, 127 = velocity, 1 = channel //Serial.write("7"); //PrevBp=26; Flag0=0; Flag1=1; Flag2=0; Flag3=0; Flag4=0; Flag5=0; } if ( Bp2>=500 && Flag2==0 && Bank==1 ) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(27,127,1); // send a MIDI CC -- 27 = note, 127 = velocity, 1 = channel //Serial.write("8"); PrevBp=27; Flag0=0; Flag1=0; Flag2=1; Flag3=0; Flag4=0; Flag5=0; } if ( Bp3>=500 && Flag3==0 && Bank==1 ) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(28,127,1); // send a MIDI CC -- 28 = note, 127 = velocity, 1 = channel //Serial.write("9"); //PrevBp=23; Flag0=0; Flag1=0; Flag2=0; Flag3=1; Flag4=0; Flag5=0; } if ( Bp4>=500 && Flag4==0 && Bank==1) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(29,127,1); // send a MIDI CC -- 29 = note, 127 = velocity, 1 = channel //Serial.write("10"); //PrevBp=27; Flag0=0; Flag1=0; Flag2=0; Flag3=0; Flag4=1; Flag5=0; } if ( Bp5>=500 && Flag5==0 && Bank==1) { //midiOut.sendControlChange(PrevBp,127,1); midiOut.sendControlChange(30,127,1); // send a MIDI CC -- 30 = note, 127 = velocity, 1 = channel //Serial.write("Bank0"); //PrevBp=30; Flag0=0; Flag1=0; Flag2=0; Flag3=0; Flag4=0; Flag5=1; Bank=0; } }


Ces tutoriels devraient vous plaire

vignette Préparer un fichier pour une découpe et une gravure laser
Préparer un fichier pour une découpe et une gravure laser
vignette Arduino et Porte automatique de poulailler
Arduino et Porte automatique de poulailler
vignette Comment fabriquer son filament pour imprimante 3D
Comment fabriquer son filament pour imprimante 3D
avaatar IO/AN

IO/AN

Suivre

Vues: 140
Mis en favoris: 0

Découvrez d'autres tutoriels de

IO/AN

Découvrez tous les tutoriels partagés sur Oui Are Makers

Powered by Oui Are Makers