2004/6/15
回路図・ブロック図修正 2004/6/23
CMU-800 MIDI化関連
 |
 こんな奴です。
|
もともとマイコンは専門外なので、かなりしょんぼりな仕様のMIDI改造です。
コントローラには秋月電子のAKI-H8 Tinyキットを使用しています。
AKI-H8側では、R1を4.7kΩから47kΩに変更、IC2の12番ピン、JP1のカットをしています。
写真を見てもらえばわかると思いますが、元々のフラットケーブルをカットし、コントローラを接続しています。
本体のフラットケ−ブルの出口にはCH設定用のロータリースイッチがうまい具合に収まりました。コントローラの電源(+5V)は、
CMUの電源よりもらっています。
つい最近まで気付かなかったのですが、RolandのUSB MIDIインターフェースにつないだらまともに動きませんでした。多分ラン
ニングステータスかなんかを取り逃してるんじゃないか?と思います。ただ、我が家の環境(KAWAI Q80)では現状困っていないの
で直す予定(気力)はありません。
ソースは下からダウンロードできますが、力技の怪しい物なのであまりお勧めできません。「ここが変だよ」なんて指摘をして
いただけたら感謝します。でも、今更こんな機械使ってる人なんていないですよね
コントロール方法
下図がCMU-800のブロック図です。見てのとおり非常に簡単なもので、80系バスに8255、8253、その他周辺を接続したものです。
8255はパラレルポート、8253はプログラマブルタイマです。両方とも非常にポピュラーな石なのでデータシートはググればすぐに見つかると思います。
8255はMode0にセットします。ただ、PortCの上位は内蔵クロックの入力に使われているので「入力」に、他のポートは出力にします。
8253はmode3の方形波出力モードにします。
8255のPortBにリズム音源が繋がっているので、適当に出力を上げ下げすると音が鳴るので、うまくドライブできてるか確認できると思います。リズムは立ち上がりでトリガします。
8255のPortA、PortCはゲートのコントロールと、外部CV用DACのコントロールをしています。
外部CV用のDACはCMOSの4049と4051を使用した、しょんぼり6bitD/Aで、1bitあたり半音になっています。
1チャンネル分のコントロールの手順は、以下のようにします。
8253 内蔵音源の音程
設定するChの周波数の分周比をセットする。(元発は2MHzだったと思います。)
8255 ゲートと出力用CV値
(1) PortAのbit0〜5で外部CV用のデータ(ノート)をセット
(2) PortAのbit7にゲートを設定する(実際には(1)のタイミングでセットします。)
(3) PortCのBit1〜3にChをセット
(4) PortCのBit0を一瞬Lowにする。ストローブ
※4051、259のイネーブルは負論理なので、PortCのBit0は普段はHiにしておく※
ゲート出力と内蔵音源のゲートは共通になっています。
以上です。ちょっとマイコンを弄った事があれば比較的簡単にコントロールできると思います。
ちなみに、オリジナルのCMUでは8253にNEC製が指定されていますので、CMU側からマイコンにデータ入力を行わないのであれば、
/RDをHiに、/IOREQをLoに固定し、/WRだけで制御できます。多分…
8253が普通の物だと、タイミング的に/IOREQもコントロールしないとうまく動かないと思います。

I/Oポートアドレスマップ |
アドレス | | |
| IC 8(8253) | |
90h | Ch0 | Melody |
91h | Ch1 | Bass |
92h | Ch2 | Chord1 |
93h | Modeレジスタ | |
| IC 7(8253) | |
94h | Ch0 | Chord2 |
95h | Ch1 | Chord3 |
96h | Ch2 | Chord4 |
97h | Modeレジスタ | |
| IC 6(8255) | |
98h | PortA | |
99h | PortB | |
9Ah | PortC | |
9Bh | Modeレジスタ | |
AKI-H8、CMU-800のピン配置のメモ
AKI-H8のCN1ピン配置 |
ピン | 名前 | 名前 | ピン |
1 | GND | GND | 2 |
3 | PB4 | PB5 | 4 |
5 | PB6 | PB7 | 6 |
7 | PB3 | PB2 | 8 |
9 | PB1 | PB0 | 10 |
11 | VCL | RES | 12 |
13 | TES | T P5 | 0 14 |
15 | P51 | P52 | 16 |
17 | P53 | P54 | 18 |
19 | P55 | P10 | 20 |
21 | P11 | P12 | 22 |
23 | 5V | PS-I | N 24 |
25 | GND | GND | 26 |
|
AKI-H8のCN2ピン配置 |
ピン | 名前 | 名前 | ピン |
26 | GND | TXD232 | 25 |
24 | RXD232 | P17 | 23 |
22 | P16 | P15 | 21 |
20 | P14 | P22/TXD | 19 |
18 | P21/RXD | P20 | 17 |
16 | P87 | P86 | 15 |
14 | P85 | P84 | 13 |
12 | P83 | P82 | 11 |
10 | P81 | P80 | 9 |
8 | NMI | P76 | 7 |
6 | P75 | P74 | 5 |
4 | P57 | P56 | 3 |
2 | GND | GND | 1 |
|
CMU-800のピン配置 |
ピン | 名前 | 名前 | ピン |
50 | GND | - | 49 |
48 | GND | - | 47 |
46 | - | - | 45 |
44 | - | - | 43 |
42 | - | /IORQ | 41 |
40 | - | - | 39 |
38 | - | /WR | 37 |
36 | - | /RD | 35 |
34 | - | A7 | 33 |
32 | - | A6 | 31 |
30 | - | A5 | 29 |
28 | - | A4 | 27 |
26 | - | A3 | 25 |
24 | - | A2 | 23 |
22 | - | A1 | 21 |
20 | - | A0 | 19 |
18 | - | D7 | 17 |
16 | - | D6 | 15 |
14 | - | D5 | 13 |
12 | - | D4 | 11 |
10 | - | D3 | 9 |
8 | - | D2 | 7 |
6 | - | D1 | 5 |
4 | - | D0 | 3 |
2 | - | - | 1 |
|
※ 注意 ※
回路図、ソース、バイナリともに全てフリーです。改変・再配布等、自由に使用していただいて構いません。
使用に対し報告の義務等は一切ありませんが、「使ったよ」と一言言っていただけると、ちょっと嬉しいです。
ただし、著作権を放棄しているわけではありません。このままの状態で(使い物になるかはさて置き)「俺が作った!!」というような
主張はご遠慮ください。
また、使用したことにより発生したいかなる問題も、一切責任は負えません。
写真&ダウンロード
内部の様子1 |
内部の様子2 |
MIDI CHの設定用スイッチ |
ダウンロード
簡単な回路図
自分用のメモなので間違えがあるかもしれません。
H8/300H(3664)用ソースとバイナリ(zip file)
日立アセンブラでアセンブル出来ると思います。
−主な仕様−
受信CH |
6ch(各1〜16に設定可能)
MELODY, BASS, CHORD(4音ポリ), RHYTHM(内蔵音源), AUX1, AUX2 |
受信メッセージ
|
note on, note offのみ
|
その他
|
RolandのUSBインターフェースでは誤動作します。サウンドブラスタ互換MIDIポートでは動作しました。他は不明。また、回路図・ソースともにfreeです。勝手に使っていただいてかまいません。ただし、使用したことによるトラブル等の責任は一切取れません。また、うまく動かなかったらごめんなさい。
|
|
このサイトは特に断りのあるコンテンツを除きリンク・転載フリーです。うるさい事は言いません。 |
|  |
(c)1995-2017 LITZHAUS |