mai 14

Bontons Up/Down controller MIDI

Le pitch étant de contrôler le volume MIDI générale de Ableton Live avec 2 boutons poussoirs (ou un interrupteur 2 positions), le commun étant relié à la masse..
Dans mon test, en mettant la valeur 7 (CC MIDI) pour controler le curseur j’ai des « sautes » rapide du curseur ??!!, j’ai donc mis la valeur 12 (effect control) en tant que controller du curseur de volume et ça marche à merveille !

Tous les codes MIDI içi

/* testé sur teensy 3.1 */
/* au changement de set Ableton, à la 1er impulsion des boutons, le volume se met une fraction de seconde au volume du set précédent (Compteur part de la dernière valeur) */

/* TYPE DE MESSAGE MIDI :
0 = Bank select
1 = modulation
2 = Breath control
3 = non défini
4 = Foot controller
5 = portamento
6 = données MSB
7 = Volume
8 = balance
9 = non défini
10 = panoramique
11 = expression controller
12 = effect control 1
13 = effect control 2
14/15 = non défini
*/

int TypeMessage = 12;
int MIDIchannel = 1;
const int Latence = 10; // vitesse du changement
const int MaxHaut = 107; //de 0 à 127 en MIDI. 107 = 0 dB
const int BoutonBas = 32; //pin
const int BoutonHaut = 33;//pin
int EtatBoutonBas;
int EtatBoutonHaut;
int Compteur = 107; //pour démarrer 0 dB

void setup() {
  /* boutons */
  pinMode(BoutonBas, INPUT_PULLUP);
  pinMode(BoutonHaut, INPUT_PULLUP);
}

void loop() {

  EtatBoutonBas = digitalRead(BoutonBas);
  EtatBoutonHaut = digitalRead(BoutonHaut);

  if (EtatBoutonBas == LOW && Compteur < MaxHaut)   {       usbMIDI.sendControlChange(TypeMessage, Compteur, MIDIchannel);       Compteur++;       delay(Latence);   }   if (EtatBoutonHaut == LOW && Compteur > 0)
  {
      usbMIDI.sendControlChange(TypeMessage, Compteur, MIDIchannel);
      Compteur--;
      delay(Latence);
  }
}//loop

Étiquettes :
Copyright 2017. All rights reserved.

Ecrit 14 mai 2015 par Pit dans la catégorie "Teensy/Arduino

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

trois × deux =