AlienArea51:
Bonsoir
Quote from: AlienArea51 on Today at 12:00:25 pm
Bonjour
Il y a également ça , si tu peux investir un peu :
[/url]
Je n’ai pas envie d’investir, je ne suis pas musicien du tout, c’est plus pour le coté marrant de la chose, voir comment ça ce comporte, et si ça me plait je regarderais pour faire un clavier en cannette smiley
Je ne suis pas musicien non plus
:D,par contre ,très fan de Synthés et Guitares , j’avais proposé ces cartes dans le sens autonomie de la chose et flexibilité ,maintenant je comprends l’amusement
je ne suis pas un demeuré 
Mais tu vas vite comprendre qu’en t’orientant dans ce domaine (qui est génial) ,tu vas être vite limité …
C’est ton choix ,donc je le respecte 
Maintenant le clavier en forme de canette , c’est cool
(mais autonome c’est encore mieux )
le principale est de prendre du plaisir 
Donc bon amusement
CDT
Will
J’ai toujours eu envie plus ou moins de me mettre au clavier 
Par contre j’arrive a rien, j’ai DL la librairie MIDI, installer, j’ai mis mon code sur l’Arduino :
#include <MIDI.h>
// Simple tutorial on how to receive and send MIDI messages.
// Here, when receiving any message on channel 4, the Arduino
// will blink a led and play back a note for 1 second.
#define LED 13 // LED pin on Arduino Uno
const uint16_t THRESHOLD = 50;
void setup()
{
pinMode(LED, OUTPUT);
MIDI.begin(4); // Launch MIDI and listen to channel 4
Serial.begin(57600);
}
void loop()
{
for (uint8_t i = 2; i < 7; ++i){
/* Test si la "touche" a été appuyé ou non */
if(touch_measure(i) > THRESHOLD)
Serial.print('1');
else
Serial.print('0');
//Serial.println(touch_measure(i), DEC);
/* Sépare chaque bits */
Serial.print(' ');
}
/* Sépare chaque lignes */
Serial.println();
/* Délai no-flood */
delay(500);
if (MIDI.read()) // If we have received a message
{
digitalWrite(LED,HIGH);
MIDI.sendNoteOn(42,127,1); // Send a Note (pitch 42, velo 127 on channel 1)
delay(1000); // Wait for a second
MIDI.sendNoteOff(42,0,1); // Stop the note
digitalWrite(LED,LOW);
}
}
uint8_t touch_measure(uint8_t measurePin)
{
/* Registre bas-niveau, DDR = port de configuration, PORT = port de sortie, PIN = port d'entrée */
uint8_t xport = digitalPinToPort(measurePin);
volatile uint8_t *ddr = portModeRegister(xport);
volatile uint8_t *port = portOutputRegister(xport);
volatile uint8_t *pin = portInputRegister(xport);
/* Résultat de la mesure, Bitmask de la broche à mesurer */
uint8_t cycles, bitmask = digitalPinToBitMask(measurePin);
/* Décharge la capacité en contact avec la broche */
*port &= ~(bitmask); // Place la broche à LOW
*ddr |= bitmask; // Place la broche en sortie
delayMicroseconds(1000); // Attend pour être sur que la capacité est déchargé
/* Place la broche en entrée, sans résistance de pull-up ! */
/* (La résistance de >1M ohms externe servira de résistance de pull-up) */
*ddr &= ~(bitmask);
/* Mesure le nombre de cycles CPU requis avant que la broche ne commute */
for(cycles = 0; cycles < 256; ++cycles){
if (*pin & bitmask) break; // Si la broche a commuter on quitte la boucle
}
/* Re-décharge la capacité en contact avec la broche
* afin d'éviter tout parasitages d'une autre mesure sur une autre broche.
* Dans le cas contraire il serait impossible de manipuler plus d'une touche "tactile" */
*port &= ~(bitmask);
*ddr |= bitmask;
/* Retourne le résultat */
return cycles;
}
j’ai aussi télécharger hairless midi-serial, il détecte bien une entrée avec l’Arduino sur le com3 mais affiche un message d’erreur :
+4.876 - Error: got unexpected data byte 0x30.
+4.876 - Error: got unexpected data byte 0x20.
+4.876 - Error: got unexpected data byte 0x30.
+4.876 - Error: got unexpected data byte 0x20.
+2.119 - Error: got unexpected data byte 0xd.
+2.119 - Error: got unexpected data byte 0xa.
ect ect
Les temps sont fictifs, mais c’est toujours dans cette ordre !
Puis en logiciel j’ai pris AriaMaestosa !