TinyJoyPadでカセット交換式の小型携帯ゲーム機を製作する

カセット交換式の小型携帯ゲーム機を作りましたのでこちらに作り方をまとめます。

回路がシンプルで配線も少なく製作自体が簡単なのと、パーツ代は全部で1000円以下で購入でき通販で購入できる一般的なパーツのため、STAY HOME継続の気晴らしに電子工作などいかがでしょうか。

f:id:mnishikawa:20200505150232j:plain

小型携帯ゲーム機

 

目次

 

 

 

こんなふうに動きます

こんなふうに動きます。ゲームのカセットを交換することで、簡単に複数のゲームが遊べることがわかります。 


カセット交換式の小型携帯ゲーム機を製作する

 

作った動機と今回のポイント

以前、TinyJoyPadプロジェクトの設計情報に従って小型ゲーム機を製作しました。

mnishikawa.hatenablog.com

フリスクケースぐらいのサイズに収めており、見た目も可愛いらしくレトロゲーム好きな人に見せて喜んでもらえました。ただ、TinyJoyPadのゲームを楽しむには少し小さすぎること、小型化しすぎて、電池交換やゲームの入れ替えの作業が煩雑すぎることが課題でした。今回は、これらの課題を解決すべく、前回の作品から以下のポイントを改善して製作しています。

  • 電池の持ちを良くする。また、交換しやすくする。
    →コイン電池から単4電池2本にすることで、電池寿命が10倍以上に。また、単4電池にすることで入手性が上がった。
  • ゲームを簡単に切り替えられるようにカセット交換式にする。
    マイコンのATTiny85を別基盤として筐体の外から簡単に挿抜できるようにした。
  • 液晶を大きくする
    失敗。前回と同じ液晶を使用。引き続き調査。(後ほど記載します。)

 

 

【事前準備】マイコンの書き込み

ATTiny85にArduino IDEで書き込んでいます。

TinyJoyPadプロジェクトから好きなゲームをダウンロードして、マイコンに書き込んでおきます。

書き込みの手順や詳細情報は前回の記事をご確認ください。

mnishikawa.hatenablog.com

 

書き込みには、格安AVRライターのUSBasp(HiLetgo 2個セット 51 AVR Atmega プログラムUSBasp USBASP 10ピン USB プログラマー 3.3V/5V ワット/ケーブル [並行輸入品])を使用しています。

ゲームカセット を複数作っておく場合は、まとめてダウンロードして書き込んでおくと良いでしょう。

 

 

ケースの加工と実装

液晶と電池ボックス、交換用カセットのコネクタが十分収まるように、今回は秋月で売ってるトランプケース大の箱を使うことにしました。

akizukidenshi.com

 最初に、パーツを並べてみてユニバーサル基板を適切なサイズにカット。

また、この段階でユニバーサル基板を固定するための穴も空けておきます。 

f:id:mnishikawa:20200503143002j:plain

f:id:mnishikawa:20200503143006j:plain

f:id:mnishikawa:20200503143014j:plain

ケースの加工

主要パーツをユニバーサル基板に並べてみて、蓋を閉じれることを確認します。

次に、ケースの蓋にカセット差込口やボタンの穴の位置をマーキングしていきます。

 

f:id:mnishikawa:20200503143119j:plain

カセット挿入口のマーキング

カセット差込口のコネクタの真上に、広めの穴を空けるようにサインペンでマーキングしておきます。この穴に従ってプラスチックカッター、ヤスリで穴を空けました。

 

次にボタンの穴空け作業です。

f:id:mnishikawa:20200503144107j:plain

ボタンの位置決め

ボタンはケース蓋に穴を空けて貫通させるため、別基盤として、メイン基板とコネクタで組み立てることにしました。写真のように、仮で止めておき、ケースの穴の位置を決めていきます。

 

f:id:mnishikawa:20200504131606j:plain

f:id:mnishikawa:20200504131646j:plain

穴あけ作業後のケース

丸いな穴はピンバイスでも良いですが、電動ドリルで空けてます。(簡単で楽チン!)

1mm~10mmぐらい空けられるものを用意しておくと便利です。

四角い穴は、四隅をドリルで開けたあと、プラスチックカッターでラフに切り取り、仕上げはヤスリでまっすぐにします。

 

ユニバーサル基板への実装

ユニバーサル基板に部品を実装していきます。

回路図はTinyJoyPadの配布パッケージに含まれています。

下記はその例です。(引用:TinyJoyPadプロジェクト)

f:id:mnishikawa:20200505172217p:plain

TinyJoyPadの回路図

最初に作ったのは、TinyJoyPadで唯一回路っぽいコントローラースイッチ群です。

今回はケース上面に飛び出させるため、別基盤として、マイコンへの接続はコネクタに集約しています。実装例と設計メモの写真はこちら。

f:id:mnishikawa:20200504150221j:plain

f:id:mnishikawa:20200504150249j:plain

スイッチ部の実装例

全スイッチのGNDは一本に集約できるのでうまく取り回すとジャンパなしのシンプルな実装ができます。

 

f:id:mnishikawa:20200504230306j:plain

スイッチ部の実装例

 

メイン基板は各パーツ・コネクタへの接続をひたすら行います。

マイコンが8ピン、LEDが4ピンのシンプルな構成なので、順に実装していけばそれほど難しく無いと思います。

実装例がこちら。

f:id:mnishikawa:20200504230242j:plain

f:id:mnishikawa:20200504230300j:plain

メイン基板の実装例


カセットは、メイン基板向かって下側を1番ピン、一番上を8番品としてそのまま線を引き出したシンプルなものです。サンプル実装では最初に作った大きめの基板を載せましたが、最終的には5×8ホールの小型基板に実装して複数個作りました。

f:id:mnishikawa:20200505150739j:plain

実装後の本体とカセット基板

テプラでラベルも作ってます。

 

 

f:id:mnishikawa:20200505150137j:plain

完成図

組み立てたら完成!

 

【おまけ】aitendoで買った1.3インチOLEDについて

上記実装例の中で、大きめで赤いモジュール基板のOLEDを使ってます。

しかし、完成図では青色のモジュール基板に載った小さいOLED(前回の記事で使ったものと同じ)になっています。

最初、大きめの液晶を使って見やすくしようと思い、aitendoで前回のOLEDの互換品コントローラーを搭載した1.3インチOLEDを購入しました。

 

www.aitendo.com

 

ブレッドボード上では問題なく動作したのですが、今回の組み立て後、ノイズのためか画質が安定しない現象が発生しました。ゲームカセット(ATTiny85基板)を外に置いて長いケーブルで接続すると安定動作するので、今回のレイアウトでは厳しそうです。

結果、前回の記事で使ったOLEDに置き換えています。 

akizukidenshi.com

 

 コントローラーは互換品ですが、モジュール基板のGNDとVCCのピンアサインが逆のため、組み上げ後にピンアサイン変換基盤を挟んで搭載しています・・・。

実装例として写真を参照される場合はご注意ください。

 

 

 

主要なパーツリスト

最後に、今回の製作に使った主要パーツをリストアップしておきます。

 

akizukidenshi.com

 

  • 0.96インチOLED

akizukidenshi.com

 

 

 

  • USBasp(AVRライター) 

  

  • タクトスイッチ

akizukidenshi.com

 

 

  • 圧電スピーカー

akizukidenshi.com

 

 

  • ユニバーサル基板 

  

  •  抵抗

  

  • ケース

akizukidenshi.com

 

 

  • 電池ボックス 

 

  • シール基板
サンハヤト シール基板 ICB-052

サンハヤト シール基板 ICB-052

  • メディア: Tools & Hardware