arduino的MIDI library应用之发送MIDI信息(二)

#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);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值