Removed mostly useless "TestApp" demo, as it was mainly useful only for checking for sytax errors in the library.
MIDI device demos now receive MIDI events from the host and display note ON messages via the board LEDs. Added beginnings of a MIDI class bootloader.
This commit is contained in:
parent
059ebd01a3
commit
89c837ee34
18 changed files with 3437 additions and 11 deletions
|
@ -190,7 +190,26 @@ void MIDI_Task(void)
|
|||
/* Select the MIDI OUT stream */
|
||||
Endpoint_SelectEndpoint(MIDI_STREAM_OUT_EPNUM);
|
||||
|
||||
/* Check if endpoint is ready to be read from, if so discard its (unused) data */
|
||||
/* Check if a MIDI command has been received */
|
||||
if (Endpoint_IsOUTReceived())
|
||||
Endpoint_ClearOUT();
|
||||
{
|
||||
USB_MIDI_EventPacket_t MIDIEvent;
|
||||
|
||||
/* Read the MIDI event packet from the endpoint */
|
||||
Endpoint_Read_Stream_LE(&MIDIEvent, sizeof(MIDIEvent));
|
||||
|
||||
if (MIDIEvent.Command == (MIDI_COMMAND_NOTE_ON >> 4))
|
||||
{
|
||||
/* Change LEDs depending on the pitch of the sent note */
|
||||
LEDs_SetAllLEDs(MIDIEvent.Data2 > 64 ? LEDS_LED1 : LEDS_LED2);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Turn off all LEDs in response to non-Note On messages */
|
||||
LEDs_SetAllLEDs(LEDS_NO_LEDS);
|
||||
}
|
||||
|
||||
/* Clear the endpoint ready for new packet */
|
||||
Endpoint_ClearOUT();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue