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>?& |