電子工作の第一歩は、ゲーム機『TinyJoypad』から! と思っていたのだけれど、もっとシンプルなものから組み立てた方が勉強になるかなと思い始めた。そこで見つけたのが、『How To Make A STAR WARS Game Using Arduino and OLED?』というブログの記事だ。大好きなスター・ウォーズ(っぽい)ミニゲームで、マイコンはArduino UNOだ。そして基板(ブレッドボード)の上にはボタンが3つ、ブザー、モニターだけが載っている。抵抗もない。コンデンサーもない!
今あるパーツだけで組み立てられるし、しかもソースコードも537行しかないから自分のスキルでも全体が把握できそうだ。
https://projecthub.arduino.cc/12345hoxdipan/how-to-make-a-star-wars-game-using-arduino-and-oled-retro-g-77b692
ありがたいことに、ブログの記事にはブレッドボード図がのっている。見たままに繋ぐだけで、動くはずだ……。勉強の為に部品をひとつずつ繋げて、ちょっとずつ動かしながら仕組みを確かめることにした。
 |
| ビビリなので、まずはブザーだけでテストした。 |
まずは確実に動きそうなブザーから。恐る恐るブレッドボード図で指定されていた『9番のピン』にブザーを繋いで、指定されていたライブラリ『Adafruit SSD1306』と『Adafruit GFX Library』をインクルードして、プログラムをArduinoに書きこんでみた。ライブラリの導入は、統合環境『Arduino IDE』から検索するだけなので便利。面倒な部分をなるべく見えないようにする工夫がされているから、自分のような初心者にはありがたい。
書き込みが終わって実行してみると、あっさりお馴染みの「デーデーデーデッデデー」と、スターウォーズ(っぽい)オープニング曲が流れてきた。画面もボタンも繋いでいないから見ることはできないけれど、プログラムは無事に動いているようだ!
その後は画面だけ繋いでテスト! ボタンを1つだけつけてテスト! 更にボタンを2つ足してテスト! という流れで組み立ててみて、無事に全体が完成した。書かれた通りに組み立てただけだけど、Aruduinoのスケッチ(プログラムのこと)が、どのように動くのか理解できたし、Lチカの次としては大満足だ。一歩前進した気分です。
 |
| 画面(OLED)の裏側をみたら雑だったので不安が100倍になった! 偽物? |
 |
| 動いた! 疑って、ごめんなさい。 |
 |
| Lチカから卒業できた! |
 |
| 画面が見切れてる……。仕様だと信じて、小さいブレッドボードに載せ替えました。 |
それにしても、このゲームは画面の下の方が少し映っていない。見切れている。自分の組み立てミスかと思ったけれど、ブログの写真やYouTube動画も同じように見切れている。きっと、こういう荒っぽい仕様なんだろう……。