KZ80 IOB REV1 - kuninet/Z80_IOB GitHub Wiki
KZ80_IOB REV1 (Z80 I/Oボード)
概要
- Z80 CPUボードやSBC8080 CPUルーズキットと組み合わせて使用できるI/Oボードです。
- 8255AパラレルLSIを搭載可能です。
- 8251シリアルLSIにより、PC/Macのターミナルソフトと通信できます。
- FM音源チップ搭載Arduinoシールド(基板鋭意検討中)を搭載するためのピンソケット端子があります。
部品組み付け例
- 下記写真は部品の組付け例です。
回路について
- 最近の回路図(試作中)はこちらです。
パラレルI/O(8255)について
- データバス(D0〜D7)、アドレスバス(A0、A1)はSBC8080バスに直結しています。
- #RD(入力)/#WR(出力)/RESET(リセット)はそれぞれSBC8080バスの#IOR/#IOW/RES端子へ接続しています。
- 入出力用のポートA/B/Cは、2x7(14ピン)ヘッダと接続しています。外部機器との接続に利用してください。
- #CE(チップイネーブル)は74HC138と接続しており、2x8ピンヘッダでI/Oアドレスを選択できます。
シリアルI/O(8251)について
- データバス(D0〜D7)、アドレスバス(A0)はSBC8080バスに直結しています。
- #RD(入力)/#WR(出力)/RESET(リセット)/INT(割り込み要求)はそれぞれSBC8080バスの#IOR/#IOW/RES/INT端子へ接続しています。
- 入出力用に1x6ピンヘッダへ接続します。SBC8080 SUBルーズキットなど同様 TTLレベルのシリアル-USB変換基板等を使用して接続してください。
- #CE(チップイネーブル)は74HC138と接続しており、2x8ピンヘッダでI/Oアドレスを選択できます。
- シリアル用のクロックは水晶振動子4.9152MHzを74HC4060により発振させて153.6kHzを生成しています。
その他
- FM音源(YM2151)Arduinoシールドは、以下の「Arduino で YAMAHA YM2151 を VGM ファイルで演奏させる」の作例に準拠しています。
- https://another.maple4ever.net/archives/2441/
- https://github.com/h1romas4/arduino-vgmplayer
- ☆Z80のI/Oアドレスデコード信号をYM2151の#CSへ渡すためAnalogピンの1つを使用しています。
- FM音源(YM2151)Arduinoシールドのリセット端子が負論理のため、RES信号をトランジスタ(2SC1855)のNOT回路経由で反転させています。
KiCADデータ等について
- KiCADデータ等はこちらにあります。参考にしてください。
組み付けする部品等について
- 部品表は以下にあります。OpenOfficeなどのCalc形式となっています。
- 特に特別な部品はありません。ロジックICは74HCタイプを使用してください。
- パラレルI/O、シリアルI/O、FM音源のI/Oアドレスは以下が推奨です。
種類 | I/Oアドレス |
---|---|
パラレルI/O(8255A) | C0h |
シリアルI/O(8251) | 00h |
FM音源 | 40h |
-
下記写真はジャンパ設定例です。
- SBC8080 SUBルーズキットと組み合わせて使用する場合は、上記設定だとシリアルI/Oアドレスがバッティングするため注意してください。(SUBルーズキットの8251を外す or アドレスをずらすなど)
REV1.1基板について
- 以下のREV1基板の課題は修正しました。
- リリース1として固めました。
REV.1基板の注意
トランジスタのパターンが狭いためはんだ付けがしずらいかもしれません。パラレルI/O(8255)の入出力用2x7(14ピン)端子が、LSIの仕様上のグループA/Bと一致していません。REV1.1で修正しました。