2012/10/18
■ [z80]自作Z80 CP/Mマシン(18)
ブレッドボードZ80マイコンのダウンロード回路の回路図を作りました。
秋月のUSBシリアル変換モジュール(AE-UM232R、FTDI社のFT232RL)をBit Bang Modeで使用しデータ(DD0〜DD7)と、クロック(MCLK.SW)、リセット(RESET.SW)の合計10bitの出力ポートとして使っています。
この回路はWR#書込みスロトーブ信号をシフトクロックに使っているため、前もってMProg等のユーティリティでCBUS0にWR#(書込みストローブ)を割り当て、EEPROMに書き込んでおく必要があります。
FT232RLはBit Bang ModeでD0〜D7、CBUS Bit Bang ModeでCBUS0〜CBUS3の8+4bitの合計12bitとして使えそうですが、両方を一緒に使えないようなので Bit Bang Modeと8Bitのシフトレジスタ(74HC164)を使いシフトレジスタでデータバス用のDD0〜DD7を出力します、またシフトレジスタの制御に2bit(Data+Clock)を使いますので6+8bitまで使えます。
ちょっとトリッキーですが、回路節約のためダイオードOR回路でWR#信号をシフトクロックとして出力する・しないを制御していて、SCK_EN(D1)をHにしながら8回書き込むとDATA(D0)の値をシフトしていって1バイトのデータが出力できます。
ちなみに、74HC164はシフトしている途中の値も出力していますので注意です、シフト中のデータを出力したくない場合は3ステート出力レジスタ付きの74HC595などを使うとよいです。
FT232RL(秋月AE-UM232R)+シフトレジスタの参考回路図
関連エントリ: Z80に関するエントリ、 動画(ニコニコ)はこちら