Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
|
projets:c12:accueil [2016/10/26 22:21] resonance Créé depuis le formulaire projets:creer |
projets:c12:accueil [2016/10/27 00:17] (Version actuelle) resonance [Description] |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== C12 ====== | ====== C12 ====== | ||
| * Porteur du projet : Jérôme [[: | * Porteur du projet : Jérôme [[: | ||
| - | * Date : 26/10/2016/ - ... | + | * Date : 26/10/2016 |
| * Licence : [[http:// | * Licence : [[http:// | ||
| - | * Description : Contrôleur Midi DIY avec 12 touches | + | * Description : Contrôleur Midi DIY avec 12 touches |
| - | * Fichiers sources : //mettre un lien// | + | * Fichiers sources : {{:projets: |
| - | * Lien : //mettre un lien// | + | |
| {{tag> | {{tag> | ||
| ===== Description ===== | ===== Description ===== | ||
| - | Contrôleur Midi DIY avec 12 touches | ||
| - | |||
| {{projets: | {{projets: | ||
| - | ===== Matériaux | + | Contrôleur Midi DIY avec 12 touches. On utilise ici un module très pratique à connecter à l' |
| - | Liste de matériel et composants nécessaires. | + | |
| + | |||
| + | ===== Matériel | ||
| + | * Arduino | ||
| + | * Module MPR121 | ||
| + | * Scotch aluminium ou cuivre | ||
| + | * Matériels | ||
| + | * Une planche | ||
| + | |||
| + | |||
| + | |||
| + | |||
| ===== Tutoriel ===== | ===== Tutoriel ===== | ||
| - | Guide pas à pas pour la réalisation du projet. | + | **Connectique** |
| + | {{: | ||
| + | |||
| + | <WRAP center round important 80%> | ||
| + | |||
| + | **Souder les composants** | ||
| + | {{: | ||
| + | |||
| + | **Couper les fils et souder les touches de scotch** | ||
| + | {{: | ||
| + | |||
| + | **On peut graver au laser sur le bois les bords des touches** | ||
| + | {{: | ||
| + | |||
| + | **Ta da !** | ||
| + | {{: | ||
| + | |||
| + | |||
| + | ==== Code ==== | ||
| + | * Convertir une UNO ou une Leonardo en contrôleur Midi comme expliquée ici sur la page [[logiciels: | ||
| + | * Télécharger et installer la bibliothèque permettant de communiquer avec le MP121 : [[https:// | ||
| + | * Téléverser le code Leonardo (pour une UNO il suffit de télécharger la bibliothèque MIDI et de remplacer les " | ||
| + | |||
| + | ++++ Code C12-Leonardo | | ||
| + | <code cpp> | ||
| + | /* | ||
| + | * Midi Controller with 12 capacitive sensors | ||
| + | * Hardware : Arduino Leonardo (TeeOnArdu) + MPR121 | ||
| + | * | ||
| + | * See more : http:// | ||
| + | */ | ||
| + | |||
| + | #include < | ||
| + | #include " | ||
| + | |||
| + | // Setup | ||
| + | Adafruit_MPR121 cap = Adafruit_MPR121(); | ||
| + | int touchCtl[] = {6, | ||
| + | const int channel = 1; // midi channel | ||
| + | uint16_t lasttouched = 0; | ||
| + | uint16_t currtouched = 0; | ||
| + | elapsedMillis msec = 0; | ||
| + | |||
| + | void setup() { | ||
| + | if (!cap.begin(0x5A)) { | ||
| + | while (1); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | if (msec >= 20) { // sampling rate | ||
| + | msec = 0; | ||
| + | currtouched = cap.touched(); | ||
| + | for (uint8_t i=0; i<12; i++) { | ||
| + | // it if *is* touched and *wasnt* touched before, alert! | ||
| + | if ((currtouched & _BV(i)) && !(lasttouched & _BV(i)) ) { | ||
| + | | ||
| + | } | ||
| + | // if it *was* touched and now *isnt*, alert! | ||
| + | if (!(currtouched & _BV(i)) && (lasttouched & _BV(i)) ) { | ||
| + | | ||
| + | } | ||
| + | } | ||
| + | |||
| + | // reset our state | ||
| + | lasttouched = currtouched; | ||
| + | } | ||
| + | |||
| + | while (usbMIDI.read()) { | ||
| + | // ignore incoming messages | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | ++++ | ||
| + | |||
| + | |||
| + | ===== Utilisation ===== | ||
| + | Un exemple de réception dans Pure Data. Les capteurs envoient le nombre 127 s'ils sont touchés, sinon c'est 0. | ||
| + | {{: | ||
| + | |||
| + | ===== Exemples ===== | ||
| + | {{youtube> | ||
| + | |||
| + | [[https:// | ||
| + | [[https:// | ||
| ===== Photos ===== | ===== Photos ===== | ||
| - | Code pour afficher les images du projet : | + | |
| - | < | + | {{gallery>?& |