COSMAC Toy Computer

COSMAC Toy ComputerはCOSMAC基本CPUボードや応用回路をコンパクトな基板にまとめて製作し、Arduinoのような使い方をしてみたものです。
さて、1970年代のCOSMAC CPUでどこまでArduinoに近づくことができるでしょうか?

COSMAC CPUボード

COSMAC CPUに最低限の周辺回路を付加しました。クロックはCR発振です。ブートローダー基板用の20ピンコネクタとシールド基板用の12ピンコネクタを実装しました。
メモリはバッテリバックアップされた6264ですが、実際に使っているのは先頭から256バイトだけです。これはトグルスイッチで正確に手入力できるのは256バイトが限界と思われるためです。Q出力は簡易アンプでスピーカーを直接駆動したり、アンプを通さずに直接デジタル信号として使用することができます。シールド基板のサイズは秋月電子のC基板に合わせましたので、ユニバーサル基板でのシールドの試作も可能です。

cosmac_cpu_rev1_3.png

プログラムローダーボード

プログラムローダーはトグルスイッチでプログラムを入力するためのものです。シンプルな回路のため、バスにシールドを接続したままだと、スイッチが機能しないこともあります。そのためプログラムの書き込みを行う場合はシールドを一度取り外してメモリに書き込んだあとに、シールドを接続します。シールドの取り外しを行うときはメモリをスタンバイにすることで、メモリの内容は保持されます。
LEDはバスの信号をラッチして点灯します。2つのスライドスイッチで、CPUの動作モードを設定したあとに、DMA INにつながっているプッシュスイッチを押すことで、トグルスイッチで設定した値をメモリに書き込むことができます。

cosmac_boot_beta.png

ミニ電子オルガンシールド

8つの端子に8ビットプライオリティエンコーダを接続しました。どれかの端子にリード線が触れると、4ビットの信号に変換されます。COSMAC CPUはこの信号を読み取って、どの音階が選択されたかを判断し、音階に応じた音声信号をQ端子から出力しスピーカーを鳴らします。

cosmac_organ.png

液晶表示シールド

4ビットのパラレルバスで表示できる液晶モジュールを接続しました。COSMAC CPUから液晶モジュールに初期設定の命令を送ったあとに文字コードを送ることで液晶画面に文字を表示することができます。

cosmac_lcd.png

DCモーターシールド

マイコンで制御できるモータードライバ基板です。秋月電子のAE-TB6612モータードライバキットを搭載することで、COSMAC CPUで2つのDCモーターを制御(正転、逆転、停止)できます。

cosmac_motor.png

音声出力シールド

マイコンで制御できる音声合成ICAquesTalkPicoを接続しました。この音声合成ICにあらかじめ音声をプリセットし、COSMAC CPUでプリセット音を選択して発声するようにしました。声のパターンは限られてしまいますが、14種類の音声メッセージを出すことができます。

cosmac_AquesTalkpico.png

KiCADデータ

  • COSMAC CPUボード cosmac_cpu_rev1_4_kicad.zip (Rev1.4 2019/9/9)
  • プログラムローダー cosmac_boot_rev1_kicad.zip (Rev1.0 2019/9/9)
  • ミニ電子オルガンシールド(準備中)
  • 液晶表示シールド(準備中)
  • DCモーターシールド(準備中)
  • 音声出力シールド(準備中)

ガーバーデータ

サンプルアプリケーション

利用上の注意

  • 本サイトに掲載している回路、技術、プログラムなどは無保証です。
  • これらの利用によって発生したトラブルには責任を負いかねます。自己責任にてご利用ください。
  • KiCADデータおよびガーバーデータはCC BY-SA 4.0 (Copyright (C) 2019 Kazuhiro Ouchi)です。
  • サンプルプログラムはMITライセンスです。