2011年4月12日火曜日

MIDI Shield その1

Arduino のMIDI 通信を紹介します。


MIDI は主に電子楽器を接続するための規格で、演奏情報(何番のキーをどの強さで押した、など)をやりとりします。
MIDI メッセージを受けて音を出す装置(MIDI 音源) や、演奏情報を保存した音楽ファイル(SMF: Standard MIDI File)などもMIDI の仲間ですが、このMIDI Shield でできることはMIDI 信号の送受信だけで、音はでません。

sparkfun のMIDI インターフェースボード はMIDI IN, MIDI OUT, MIDI THRU の3つの端子があります。あとはフォトカプラが付いているだけで、MIDI メッセージの処理はすべてArduino 側で行います。

MIDI の送信は、Arduino IDE に標準でサンプルコードがついています。

File > Examples > 4.Communication > MIDI

低い音から高い音へ半音ずつあがるサンプルです。31.25kbps でシリアル通信を行っているだけなので簡単です。
IDE ver 0022 のサンプルはバグがあり、コンパイルするとエラーになります。


対処法は、エラーが出ている「int note」の間に半角スペースをいれてください。


PC とUSB MIDI インターフェイスで接続します。(写真はRoland UM-1。古い。)

MIDI 入力で音を鳴らすソフトを使用します。Mac なら標準でついているGarageband で鳴らせます。


ソフトウェア音源で音が鳴れば成功です。

0 件のコメント:

コメントを投稿