YMZシールドのMIDI化を検討
お疲れ様です。高橋です。
Arduino UNOにYMZシールドをくっつけ、さらに音階をLEDで表示させる所まで出来たので、次はMIDI化です。
うちにはKAWAIの電子ピアノがあります。奥さんが「弾く」というので買ったのですが、結局使ってるのは私だけです。
こいつの演奏をMIDI OUTし、MIDI INで受け付け、YMZ294で鳴らすという流れです。
実体配線図
下記が実体配線図です。
MIDIコネクタは、DIP5pinの物です。ヒロセの地下で137円。MIDI INとArduinoの間にあるICは、フォトカプラFOD817Bで、30円。抵抗は1個1円で2円。MIDIケーブルは350円。519円でMIDI化出来るのなら安いものです。
MIDI関連のフォトカプラでググるとTLP552という物が鉄板らしい記述を多く目にするのですが、秋月には無くマルツで1個440円!!!という値段で売られています。こんなの高くて買えないので、30円で妥協します。
そもそもフォトカプラも必要あるのかどうなのか。ググるとMIDI INから直接RXに接続している作例もあるのですが、とりあえず実験で使ってみます。
考えられる課題
ピン数のダイエット
YMZ294はArduinoの貴重なピンを11本使い、音階LEDは9本を使っています。既に限界ギリギリです。そこで、YMZの11本を、シフトレジスタ74HC595を使って6本に圧縮。空いた5本の内シリアル受信のRXを1本、MIDI INに使おうと思います。今これ書いてて思いつきましたが、残り4本あるとI2C LCDで2本使えるので、贅沢に文字の表示や、MIDI INから受け付けた値の出力なんかも出来そうです。
以前はんだカフェで、まりすさん(webサイト: 構想100年)という達人が作られたシフトレジスタ+YMZという組み合わせをマジマジと観察させてもらい、いじらせてもらい、裏も表も何もかも写真を撮らせてもらいました。まりすさんのこのページではLCD+シフトレジスタ74HC164の回路図がありますが、多分595でもイケるはず。ダメだったら念のため164も買ってある自分の用意周到さを褒めたい気分です。
既存のYMZライブラリの改修。
インパクトドリルさんのYMZライブラリを、使わせてもらっていますが、最終的にArduinoにビットを流し込んでいるset_registerメソッドを、シフトレジスタ用に改造する必要があります。
void YMZ294::set_register(byte addr, byte value)
{
// addr
digitalWrite(WRCS_PIN, LOW);
digitalWrite(A0_PIN, LOW);
PORTD = addr;
digitalWrite(WRCS_PIN, HIGH);
// value
digitalWrite(WRCS_PIN, LOW);
digitalWrite(A0_PIN, HIGH);
PORTD = value;
digitalWrite(WRCS_PIN, HIGH);
}
直感ですが、ここは多分全く問題無く実装出来る予感がします。
ピアノからのMIDI OUTを3和音で鳴らす
これが難問。
おそらく電子ピアノからのリアルタイム演奏のMIDI OUT信号は、チャンネルに1つにまとまった状態で和音が流れてきます。一方YMZ294は1チャンネル1音で3和音を実現しています。
解決策として今のところ考えているのが、常時開いているチャンネルの状態を保持しつつ、空いているチャンネルを見つけたらそこを使う、という感じのプログラムの実装。
ただこの方法だと、メロディ部、ベース部、真ん中部がごちゃ混ぜになって、折角赤と緑と青で実現したLEDの箇所が、ごちゃ混ぜになってしまう事です。
もう少し検討が必要ですが、まずは鳴らす所まで行きたいと思います。
以上、よろしくお願い致します。
関連記事
-
-
満員電車内でのオナラと検知 #4
お疲れ様です。高橋です。 硫化水素センサーが到着しました。結構前に到着していたの …
-
-
YMZシールドの作成 #1
お疲れ様です。高橋です。 実体配線図を書き起こしておいたYMZシールドの半田付け …
-
-
ArduinoIDE1.6.4+ATTiny13Aで赤外線リモコン(難航)
お疲れ様です。高橋です。 先日から引き続いて、ATTiny13Aで赤外線リモコン …
-
-
クオーツ時計を100倍速&リバースモード付きに改造してみた。
お疲れ様です。高橋です。 今日、奥さんから壊れた時計を貰いました。電池を入れ替え …
-
-
aitendoで買った375円のバックライト付きI2C LCDで文字を表示してみた。
お疲れ様です。高橋です。 ちょっと前にaitendoで買ったバックライト付きのL …
-
-
猫×おもちゃ×動画×アプリ
お疲れ様です。高橋です。 金魚水槽 先日フラフラとネットサーフィンしていて目に入 …
-
-
FM音源 FB-01の動作試験
お疲れ様です。高橋です。 先日、会社の大大大先輩からFB-01を貰ったので、本日 …
-
-
音階LEDの再設計
お疲れ様です。高橋です。 本日帰宅途中に電車をぼーっと待っている時、ふと、音階L …
-
-
音階LED仮組み
お疲れ様です。高橋です。 先日設計し直した音階LEDを、B型基板上に部品を載せて …
-
-
マウスの位置座標を使った電子楽器を作ってみた。
お疲れ様です。高橋です。 先日分解したマウスを使って、位置座標の取り出しと、取り …
- PREV
- 音階LED完成、YMZのノイズの原因判明
- NEXT
- MIDI INの実験


