示例#1
0
/**
 * Ein NoteOn-Kommando senden
 *  channel gibt dabei im Bereich von 0-15 den Midi-Kanal an
 *  note kann von 0-127 eine Note zwischen C -1 und G 9 angeben
 *  velocity gibt die Anschlagsstärke im Bereich von 1-127 an (0 = NoteOff)
 */
void midi_noteon(uint8_t channel, uint8_t note, uint8_t velocity)
{
	// Midi-Kanal senden
	midi_send((channel & 0x0F) | 0x90);
	
	// Noten-Wert senden
	midi_send(note & 0x7F);
	
	// Anschlagstärke senden
	midi_send(velocity & 0x7F);
}
示例#2
0
/**
 * Ein NoteOff-Kommando senden
 */
void midi_noteoff(uint8_t channel, uint8_t note)
{
	// Midi-Kanal senden
	midi_send((channel & 0x0F) | 0x90);
	
	// Noten-Wert senden
	midi_send(note & 0x7F);
	
	// Anschlagstärke 0 (NoteOff) senden 
	midi_send(0);
}
示例#3
0
void midi_receive( MidiPacket packet[], uint8_t num )
{
	// process incoming MIDI packets

	// for now, just mirror all data
	midi_send( packet, num );
}