Есть код
#include "MIDIUSB.h"
#include <USB-MIDI.h>
USING_NAMESPACE_MIDI;
typedef USBMIDI_NAMESPACE::usbMidiTransport __umt;
typedef MIDI_NAMESPACE::MidiInterface<__umt> __ss;
__umt usbMIDI(0); // cableNr
__ss MIDICoreUSB((__umt&)usbMIDI);
typedef Message<MIDI_NAMESPACE::DefaultSettings::SysExMaxSize> MidiMessage;
MIDI_CREATE_INSTANCE(HardwareSerial, Serial1, MIDICoreSerial);
void loop() {
MIDICoreSerial.sendNoteOff(oldMidiNota, 0, 1);
MIDICoreUSB.sendNoteOff(oldMidiNota, 0, 1);
//noteOff(0,oldMidiNota, 0);
//MidiUSB.flush();
MIDICoreSerial.sendNoteOn(midiNota, 127, 1);
MIDICoreUSB.sendNoteOn(midiNota, 127, 1);
}
нужно вот эти строки
MIDICoreSerial.sendNoteOff(oldMidiNota, 0, 1);
MIDICoreUSB.sendNoteOff(oldMidiNota, 0, 1);
MIDICoreSerial.sendNoteOn(midiNota, 127, 1);
MIDICoreUSB.sendNoteOn(midiNota, 127, 1);
нужно написать подпрограмму так, чтобы ей в параметр
передавать метод объекта и параметры.
а выбирать объект MIDICoreSerial либо MIDICoreUSB
подпрограмма должна в зависимости от неких внешних обстоятельств
send(NoteOn,127, 1);
void send(X,127, 1){
if (в сериал){
MIDICoreSerial.X.(X,127, 1);
else if (на USB){
MIDICoreUSB.X.(X,127, 1);
}