Simon Ford
/
USBMIDI_HelloWorld
Simple example to demonstrate the USB MIDI library
Diff: main.cpp
- Revision:
- 0:4b55d56b6b61
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Sun Feb 20 13:15:46 2011 +0000 @@ -0,0 +1,37 @@ +// Hello World example for the USBMIDI library + +#include "mbed.h" +#include "USBMIDI.h" + +void show_message(MIDIMessage msg) { + switch (msg.type()) { + case MIDIMessage::NoteOnType: + printf("NoteOn key:%d, velocity: %d, channel: %d\n", msg.key(), msg.velocity(), msg.channel()); + break; + case MIDIMessage::NoteOffType: + printf("NoteOff key:%d, velocity: %d, channel: %d\n", msg.key(), msg.velocity(), msg.channel()); + break; + case MIDIMessage::ControlChangeType: + printf("ControlChange controller: %d, data: %d\n", msg.controller(), msg.value()); + break; + case MIDIMessage::PitchWheelType: + printf("PitchWheel channel: %d, pitch: %d\n", msg.channel(), msg.pitch()); + break; + default: + printf("Another message\n"); + } +} + +USBMIDI midi; + +int main() { + midi.attach(show_message); // call back for messages received + while (1) { + for(int i=48; i<83; i++) { // send some messages! + midi.write(MIDIMessage::NoteOn(i)); + wait(0.25); + midi.write(MIDIMessage::NoteOff(i)); + wait(0.5); + } + } +}