[
TOP
]
[
シンセサイザ技術
]
[
CMU-800関連
]
[
DCB関連
]
[
電子楽器・電子工作等
]
[
さるべーじ
]
[
ばいく
]
[
リンクなど
]
[戻る]
2005/5/29
DCBメモ
JUNO60を入手したので、MIDI->DCBコンバーターでも作ろうかと思ったのですが、探しても情報が見つからなかったので調べてみました。
図が本体側のDCB周りの大まかな構成です。8251の同期モードで動いているようです。クロックは、内部で1/64にしているようで、31.25bpsのと、MIDIと同じタイミングです。
同期モードが使えるシリアルコントローラ付のマイコンで比較的簡単にコントロール出来そうです。実験では、手元にあったH8Tinyに、74LS00で作ったインバータを付けて動かせました。
データ仕様
Header
Voice1
Voice2
Voice3
Voice4
Voice5
Voice6
0xFE
xx
xx
xx
xx
xx
xx
ノートONは、データは0xFEに続けて各ボイスのノート番号+0x80を送ります。ノートoffは、0x7F以下の値を入れます。ノート番号はMIDIと同じで、C0->0x00から始まります。
たとえば、C4、E4、G4を鳴らして、次にG4を離して、最後に全部離す場合は、
0xFE-0xB0-0xB4-0xB7-0x00-0x00-0x00
0xFE-0xB0-0xB4-0x00-0x00-0x00-0x00
0xFE-0x00-0x00-0x00-0x00-0x00-0x00
という具合に送ります。実際はノートoffはbit7を落とせば良いので0x00で無くても良いです。本体の出力では、直前のノート番号のbit7を0にしたものが出力されています。
データの並びとボイス番号が1対1で対応しているので、ボイスアサインはコントロールする側で面倒みる必要があります。
JUNO60では6ボイス分送受信していますが、Jupiter8では違うのではないかと思います。実機が無いのでよく分かりませんが、8ボイス分送受信しているのでしょうか?
以上のように非常にシンプルなデータなので、比較的簡単にMIDI->DCBコンバータを作ることが出来そうです。
今回もH8を使う予定ですが、PICなんかで十分っぽいです。
次回は、MIDI->DCBコンバータの試作機が出来る予定です。
2005/06/02 補足
なんか違うかもしれない。上の形式でも動くけど、8ボイス分送っても後ろの音が出るし、データ列とボイス番号が1対1で対応しているわけでは無いような感じ。ただ、JUNOが上のようなデータしか吐いてくれないから良く分からないです。現状、面倒くさいから、RX Readyを見ないでデータ送ってるから変なのかな?
謎は深まるばかり…DCBのデータ形式知ってる人いたら教えてもらえるととても嬉しいです。
とりあえず、MIDI->DCBの変換を試作してみます。
このサイトは特に断りのあるコンテンツを除きリンク・転載フリーです。うるさい事は言いません。
(c)1995-2017 LITZHAUS