|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include <MIDI.h>
-
- MIDI_CREATE_DEFAULT_INSTANCE();
-
- // -----------------------------------------------------------------------------
-
- // This function will be automatically called when a NoteOn is received.
- // It must be a void-returning function with the correct parameters,
- // see documentation here:
- // https://github.com/FortySevenEffects/arduino_midi_library/wiki/Using-Callbacks
-
- void handleNoteOn(byte channel, byte pitch, byte velocity)
- {
- // Do whatever you want when a note is pressed.
-
- // Try to keep your callbacks short (no delays ect)
- // otherwise it would slow down the loop() and have a bad impact
- // on real-time performance.
- }
-
- void handleNoteOff(byte channel, byte pitch, byte velocity)
- {
- // Do something when the note is released.
- // Note that NoteOn messages with 0 velocity are interpreted as NoteOffs.
- }
-
- // -----------------------------------------------------------------------------
-
- void setup()
- {
- // Connect the handleNoteOn function to the library,
- // so it is called upon reception of a NoteOn.
- MIDI.setHandleNoteOn(handleNoteOn); // Put only the name of the function
-
- // Do the same for NoteOffs
- MIDI.setHandleNoteOff(handleNoteOff);
-
- // Initiate MIDI communications, listen to all channels
- MIDI.begin(MIDI_CHANNEL_OMNI);
- }
-
- void loop()
- {
- // Call MIDI.read the fastest you can for real-time performance.
- MIDI.read();
-
- // There is no need to check if there are messages incoming
- // if they are bound to a Callback function.
- // The attached method will be called automatically
- // when the corresponding message has been received.
- }
|