Module Description
Constants, Types and Enum definitions that are common to both Device and Host modes for the USB MIDI Class.
◆ MIDI_CHANNEL
#define MIDI_CHANNEL |
( |
|
channel | ) |
((channel) - 1) |
Convenience macro. MIDI channels are numbered from 1-10 (natural numbers) however the logical channel addresses are zero-indexed. This converts a natural MIDI channel number into the logical channel address.
- Parameters
-
[in] | channel | MIDI channel number to address. |
- Returns
- Constructed MIDI channel ID.
◆ MIDI_COMMAND_CHANNEL_PRESSURE
#define MIDI_COMMAND_CHANNEL_PRESSURE 0xD0 |
MIDI command for a channel pressure change event.
◆ MIDI_COMMAND_CONTROL_CHANGE
#define MIDI_COMMAND_CONTROL_CHANGE 0xB0 |
MIDI command for a control change event.
◆ MIDI_COMMAND_NOTE_OFF
#define MIDI_COMMAND_NOTE_OFF 0x80 |
MIDI command for a note off (deactivation) event.
◆ MIDI_COMMAND_NOTE_ON
#define MIDI_COMMAND_NOTE_ON 0x90 |
MIDI command for a note on (activation) event.
◆ MIDI_COMMAND_NOTE_PRESSURE
#define MIDI_COMMAND_NOTE_PRESSURE 0xA0 |
MIDI command for a note pressure change event.
◆ MIDI_COMMAND_PITCH_WHEEL_CHANGE
#define MIDI_COMMAND_PITCH_WHEEL_CHANGE 0xE0 |
MIDI command for a pitch change event.
◆ MIDI_COMMAND_PROGRAM_CHANGE
#define MIDI_COMMAND_PROGRAM_CHANGE 0xC0 |
MIDI command for a control change event.
◆ MIDI_COMMAND_SYSEX_1BYTE
MIDI command for System Exclusive (SysEx) single event that has one byte of data total.
◆ MIDI_COMMAND_SYSEX_2BYTE
#define MIDI_COMMAND_SYSEX_2BYTE 0x20 |
MIDI command for System Exclusive (SysEx) single event that has two bytes of data total.
◆ MIDI_COMMAND_SYSEX_3BYTE
#define MIDI_COMMAND_SYSEX_3BYTE 0x30 |
MIDI command for System Exclusive (SysEx) single event that has three bytes of data total.
◆ MIDI_COMMAND_SYSEX_END_1BYTE
#define MIDI_COMMAND_SYSEX_END_1BYTE 0x50 |
MIDI command for System Exclusive (SysEx) stream event terminator with one remaining data byte.
◆ MIDI_COMMAND_SYSEX_END_2BYTE
#define MIDI_COMMAND_SYSEX_END_2BYTE 0x60 |
MIDI command for System Exclusive (SysEx) stream event terminator with two remaining data bytes.
◆ MIDI_COMMAND_SYSEX_END_3BYTE
#define MIDI_COMMAND_SYSEX_END_3BYTE 0x70 |
MIDI command for System Exclusive (SysEx) stream event terminator with three remaining data bytes.
◆ MIDI_COMMAND_SYSEX_START_3BYTE
#define MIDI_COMMAND_SYSEX_START_3BYTE 0x40 |
MIDI command for System Exclusive (SysEx) stream event that has at least four bytes of data total.
◆ MIDI_EVENT
#define MIDI_EVENT |
( |
|
virtualcable, |
|
|
|
command |
|
) |
| (((virtualcable) << 4) | ((command) >> 4)) |
Constructs a MIDI event ID from a given MIDI command and a virtual MIDI cable index. This can then be used to create and decode MIDI_EventPacket_t MIDI event packets.
- Parameters
-
[in] | virtualcable | Index of the virtual MIDI cable the event relates to |
[in] | command | MIDI command to send through the virtual MIDI cable |
- Returns
- Constructed MIDI event ID.
◆ MIDI_STANDARD_VELOCITY
#define MIDI_STANDARD_VELOCITY 64 |
Standard key press velocity value used for all note events.
◆ MIDI_JackTypes_t
Enum for the possible MIDI jack types in a MIDI device jack descriptor.
Enumerator |
---|
MIDI_JACKTYPE_Embedded | MIDI class descriptor jack type value for an embedded (logical) MIDI input or output jack.
|
MIDI_JACKTYPE_External | MIDI class descriptor jack type value for an external (physical) MIDI input or output jack.
|