市场上低价的MIDI控制器只能使用USB接口连接电脑,没有提供标准的5芯MIDI接口,USB MIDI接口的缺点是必须先连接USB设备再打开宿主软件才能接受MIDI信息。
例如ICON的icontrols控制器
下面要给这个控制器增加标准5芯MIDI接口,使它一通电就可以发送MIDI信号而不需要经过。
拆开这个控制器以后,可以看到它使用了STC 12C5A16AD单片机。
搜索这个单片机的引脚资料,发现它是属于STC12C5A60系列的,它的第7脚就是MIDI输出口。
在参考了用单片机制作MIDI键盘等资料后,了解到单片机的TXD输出口就是MIDI输出口,RXD是MIDI输入口,只是网络上的资料说的是15针的游戏MIDI接口,在一些资料里也有说游戏接口可以直接弄成标准5芯MIDI接口而不需要电平转换电路。
本来icontrols另外一个USB接口是给下一级设备,如ikey等设备使用的,但我惊讶的发现单片机中的TXD口竟然直接输出到连接下级设备的USB口,这就很方便改造了。
好了,开始动手,我用了一根废的USB线,由于MIDI传输仅用到+5V和TXD两根线就可以传输了,也就是对应USB的红线和绿线。
由于这个控制器在上电的时候会判断USB的数据线是否接入电脑,如果是插入电脑,它的线路就传输至电脑,如果是仅提供电源,继电器才把信号传给连接下级设备的USB,所以供电的时候要把供电用的USB的D+和D-断开。因此还需要专门制作一根线,我使用的是USB延长线,挑断D+和D-,相当于单纯供电。
这就是制作好的MIDI转接线
最后改造完成通电试机
用手机的适配器供电
MIDI线接入声卡
最后总结:
我认为所有通过单片机生产的USB MIDI控制器都可以直接从单片机的TXD脚、RXD脚直接引出MIDI输出、输入接口。最后我没有经过电脑就输出了MIDI信号,这样在操作DAW软件时真正实现了即插即用。虽然市场上可以买到直接带标准5芯的MIDI控制器,但价格相当昂贵,而现在仅需要几块钱就可以实现这一功能。