Hola gente del foro! No soy de escribir mucho por aca pero bueno,espero me puedan dar una mano con esto.
Estoy simulando en Proteus 8.1 un Arduino UNO que nvia MIDI y necesito memorizar en la memoria del Arduino los mensajes MIDI que envia por el serial (TX) para poder leerlos de la memoria con un LCD de 2 lineas.
La verdad es que estoy bastante oxidado con programar y estoy usando el ejemplo que trae Arduino de MIDI.
Aca les va el codigo:
*/
void setup() {
// Set MIDI baud rate:
Serial.begin(31250);
}
void loop() {
// play notes from F#-0 (0x1E) to F#-5 (0x5A):
for (int note = 0x1E; note < 0x5A; note ++) {
//Note on channel 1 (0x90), some note value (note), middle velocity (0x45):
noteOn(0x90, note, 0x45);
delay(100);
//Note on channel 1 (0x90), some note value (note), silent velocity (0x00):
noteOn(0x90, note, 0x00);
delay(100);
}
}
// plays a MIDI note. Doesn't check to see that
// cmd is greater than 127, or that data values are less than 127:
void noteOn(int cmd, int pitch, int velocity) {
Serial.write(cmd);
Serial.write(pitch);
Serial.write(velocity);
}
Bueno ,desde ya muchisimas gracias y espero poder devolver con creces la ayuda!
Estoy simulando en Proteus 8.1 un Arduino UNO que nvia MIDI y necesito memorizar en la memoria del Arduino los mensajes MIDI que envia por el serial (TX) para poder leerlos de la memoria con un LCD de 2 lineas.
La verdad es que estoy bastante oxidado con programar y estoy usando el ejemplo que trae Arduino de MIDI.
Aca les va el codigo:
*/
void setup() {
// Set MIDI baud rate:
Serial.begin(31250);
}
void loop() {
// play notes from F#-0 (0x1E) to F#-5 (0x5A):
for (int note = 0x1E; note < 0x5A; note ++) {
//Note on channel 1 (0x90), some note value (note), middle velocity (0x45):
noteOn(0x90, note, 0x45);
delay(100);
//Note on channel 1 (0x90), some note value (note), silent velocity (0x00):
noteOn(0x90, note, 0x00);
delay(100);
}
}
// plays a MIDI note. Doesn't check to see that
// cmd is greater than 127, or that data values are less than 127:
void noteOn(int cmd, int pitch, int velocity) {
Serial.write(cmd);
Serial.write(pitch);
Serial.write(velocity);
}
Bueno ,desde ya muchisimas gracias y espero poder devolver con creces la ayuda!