Salve, ho questo codice che funziona .. ma solo che se configuro il software mixxx.org come modalità tasto .. e se lo testo funziona ma lo devo tenere premuto.
Come posso fare se premo Fa partire e se ripremo si ferma.
Ecco il codice che ho scritto:
#include <MIDI.h>
MIDI_CREATE_DEFAULT_INSTANCE();
#define buttonNumber 6
byte buttons[buttonNumber] = { 2, 3, 4, 5, 6, 7 };
byte buttonsNote[buttonNumber] = { 36, 23, 8, 9, 10, 11 };
byte statusNote[buttonNumber] = {0, 0, 0, 0, 0, 0};
#define led 9
byte buttonstate[buttonNumber] = {0,0,0,0,0,0};
byte lastbuttonstate[buttonNumber] = {0,0,0,0,0,0};
void setup() {
Serial.begin(115200);
delay(100);
for (byte i = 0; i < buttonNumber; i++) {
pinMode(buttons[i], INPUT_PULLUP);
}
pinMode(led, OUTPUT);
}
void loop() {
for (byte i = 0; i < buttonNumber; i++) {
buttonstate[i] = digitalRead(buttons[i]);
if(buttonstate[i] != lastbuttonstate[i]) {
if (buttonstate[i] == LOW){
MIDI.sendNoteOn(buttonsNote[i], 127, 1);
digitalWrite(led, 1);
}
else {
MIDI.sendNoteOff(buttonsNote[i], 0, 1);
digitalWrite(led, 0);
}
}
lastbuttonstate[i] = buttonstate[i];
}
}
Avete idea come fare?
E poi una cosa divertente vorrei utilizzare o meglio creare una classe Button.h, Button.cpp
Ma come posso fare queste due?
Grazie mille e buona giornata.