#include<MIDI.h>
MIDI_CREATE_INSTANCE(HardwareSerial,Serial,HardwareMIDI);
byte SysExData[10];
void setup(){
//putyoursetupcodehere,torunonce:
HardwareMIDI.begin();
}
void loop(){
HardwareMIDI.sendNoteOn(42,127,1); //音符开(音符,力度,通道)
delay(1000);
HardwareMIDI.sendNoteOff(42,127,1); //音符关(音符,力度,通道)
delay(1000);
HardwareMIDI.sendControlChange(20,100,1); //控制改变 (控制器号,数值,通道)
delay(1000);
HardwareMIDI.sendProgramChange(30,1); //程序改变 (程序号,通道)
delay(1000);
HardwareMIDI.sendPitchBend(8191,1);//弯音(弯音值,通道)最小值-8192 中间值0 最大值8191
delay(1000);
HardwareMIDI.sendAfterTouch(60,1); //通道压力 俗称触后通道 (压力值,通道)
delay(1000);
//大多数MIDI键盘的触后指的是触后通道,因为复音触后(0xA0,xx,xx)需要MIDI键盘每一个琴键都要安装压力传感器,
//成本上考虑是不现实的
//发送系统信息 MIDI规范中,系统信息以F0开头 以F7结束
SysExData[0] = 0xF0;
SysExData[1] = 0x04;
SysExData[7] = 0x12;
SysExData[9] = 0xF7;
HardwareMIDI.sendSysEx(10, SysExData, true);
delay(1000);
}