diff --git a/res/Examples/MIDI_LibValidator/MIDI_LibValidator.ino b/res/Examples/MIDI_LibValidator/MIDI_LibValidator.ino new file mode 100644 index 0000000..7d901d9 --- /dev/null +++ b/res/Examples/MIDI_LibValidator/MIDI_LibValidator.ino @@ -0,0 +1,63 @@ + +#include +#include +#include + +// ----------------------------------------------------------------------------- + +#define LCD_D4 8 +#define LCD_D5 9 +#define LCD_D6 10 +#define LCD_D7 11 +#define LCD_RS 12 +#define LCD_EN 13 + +#define LED_PASS 4 +#define LED_FAIL 5 + +// ----------------------------------------------------------------------------- + +SoftwareSerial softSerial(2, 3); + +MIDI_CREATE_INSTANCE(HardwareSerial, Serial, midiHW); +MIDI_CREATE_INSTANCE(SoftwareSerial, softSerial, midiSW); +// \todo Create instance for USB if available + +LiquidCrystal lcd(LCD_RS, LCD_EN, LCD_D4, LCD_D5, LCD_D6, LCD_D7); + +// ----------------------------------------------------------------------------- + +template +void setupMidiInstance(midi::MidiInterface& inInstance) +{ + inInstance.begin(MIDI_CHANNEL_OMNI); + inInstance.turnThruOff(); +} + +void setupLCD() +{ + lcd.begin(16,2); +} + +void setupLEDs() +{ + pinMode(LED_PASS, OUTPUT); + pinMode(LED_FAIL, OUTPUT); +} + +// ----------------------------------------------------------------------------- + +void setup() +{ + setupMidiInstance(midiHW); + setupMidiInstance(midiSW); + setupLCD(); + setupLEDs(); +} + +// ----------------------------------------------------------------------------- + +void loop() +{ + +} diff --git a/res/Examples/MIDI_LibValidator/fritzing/MIDI_LibValidator.fzz b/res/Examples/MIDI_LibValidator/fritzing/MIDI_LibValidator.fzz new file mode 100644 index 0000000..d344b8e Binary files /dev/null and b/res/Examples/MIDI_LibValidator/fritzing/MIDI_LibValidator.fzz differ