Les cookies assurent le bon fonctionnement de nos services. En utilisant ces derniers, vous acceptez l'utilisation des cookies. En savoir plus

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

Sauvegarder: 0 J'aime

Partager:

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 : 1€

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; } }


Sauvegarder: 0 J'aime

Partager:

Recevez une fois par mois les meilleurs tutoriels Déco dans votre boîte mail


Ces tutoriels devraient vous plaire

Construire son Bartop Arcade de A à Z
Un capteur de température/humidité en WIFI avec une page Web
L’imprimante 3D pour 60€: EWaste

IO/AN

Suivre

Vues: 74
J'aime: 0

Découvrez d'autres tutoriels de

IO/AN