ATtiny85と成果物−(1) | virt_flyのブログ

virt_flyのブログ

フライトシミュレーターソフトのFlightGearで仮想飛行を楽しむブログです。

 

電子工作するのは気が引ける

マイコンチップのATtiny85を使ってブレッドボード上にこしらえていた電子オルゴールとミニゲーム機を、持ち運びできるものに作り直しました。あわせて、ATtiny85にスケッチを書き込む際に、回路を毎回組まなくて済むように基板化しました。

 

 

モバイル化した電子オルゴール

 

 

↑ステレオ化、音量調節可となった電子オルゴール

 

オルゴールの音色に癒やされたくて、単に回路をブレッドボード上からユニバーサル基板に移すのではなくコイン電池を電源とし、スピーカーとイヤホンの併用による電子オルゴールのモバイル化をめざしました。

 

イヤホンだと音が大きいので、手元にあった可変抵抗器で音量の調節ができるようにしてみました。ボリューム付きのイヤホンにすれば済む話だったのかもしれませんが、電源が5Vから3Vになったせいか、スピーカーからの音がずいぶん小さくなってしまいました。ジャンパーピン様のソケットを設けて5Vを選べるようにしたものの、スピーカーからの音は改善されません。

 

電気やオーディオのことを知らないものが回路をいじったりするからでしょうか? タンタン、タンと雑音が入ってくる気もします。

 

↑外装はプラ板で作成、ステレオミニジャックとコイン電池で持ち運び可能になった電子オルゴール

 

電源となるコイン電池用用のホルダーは、電子工作で使うのははじめてだったので適当に購入したところ、しっかり電池がはさめるのはいいのですが随分固くて電池の入れ替えに往生します。そのためコイン電池の表面が傷だらけなのが、画像からわかります。

 

この電子オルゴールでは、曲の再生は1回でリピートはされませんので、電源ボタンをOFFにするのを忘れると、電池の消耗が避けられません。そこで電源がON時にLEDが点灯するよう回路に加え、注意喚起ができるようにしました。

 

この他、開発者の資料中にあった回路図を参考に、ステレオ化とリセット、曲送り兼用のボタンスイッチを加えました。

 

なお、持ち運びには基板を保護する外装が必要ですが、基板が完成するまで考えていなかったので、3Dプリンターもなく、結果、プラ板で作った筒をカバーにすることになりました。音量のつまみや電源スイッチなどはリューターで開た穴の少し中にあり、少々不便は否めません。

 

※ブレッドボード上での電子オルゴールの作製記事は、こちらを参照してください。

 

 

はじめてのモバイルゲーム機(TinyJoypad)作製

 

↑完成したTinyJoypad

 

DIYでのゲーム機づくりといえば、小型の子どもパソコンIchigoJamをつくりゲーム機にして遊んだことがありますが、電源は乾電池を昇圧して使え、ディスプレイは小型のLCDを使用できるものの、操作はキーボードを使っていましたから、モバイルゲーム機とは言い難いものでした。
 
まさに、持ち運びできどこででも遊べる小型のゲーム専用機の作製は、TinyJoypadがはじめての経験となります。
 

今どき、カラーでもなく0.96インチの小さなディスプレイのレトロゲーム機を、本当につくるつもりかいという気がしないでもありません。

 

試しにブレッドボード上に回路を組んだものの、操作しやすい位置へのキー配置はのぞむべくもなく、もちろん持ち運びはパーツの脱落のおそれがあります。ここまできたからには、ユニバーサル基板を使って、少しはそれらしいものにしたいではありませんか。

 

いざ、作製という気になったところで、ユニバーサル基板が手元にないことが判明しました。コイン電池ホルダーやICソケットなど、パーツを購入したばかりでしたから、安くはない送料をかけて追加注文というのにはしばし躊躇。結局は、ジャンパーピンやミニカードスペーサーなど余計な出費をしてしまいました。

 

物価高騰の折、趣味的な電子工作への出費はなんと気が引けることでしょう。

 

であれば、タクトスイッチはあるというのに、あらたに背の高いタクトスイッチを購入する必要が本当にあったのか? 理由は、持ち運びには基板を保護する外装が必要であり、以前購入してあったアクリル板をカバーに使えば、タクトスイッチにはアクリル板の間からキートップをのぞかせるほどに背の高いものを用意すればよいとうもの。

 

そのせいで、別なゲームを楽しみたいときには、ATtiny85マイコンチップを他のゲームプログラムを書き込んだものと交換する必要があるのに、このアクリル板が邪魔することになります。

4箇所のネジ止めを緩めたり絞めたりしてられませんよね。

 

今更、アクリル板なしとするわけにもいきません。

 

基板上にプログラム書き込み用のピンを設けて、パソコンからプログラムを書き込めばマイコンチップの差し替えの必要はなくなります。が、基板上に今更ピンを立てるスペースを設けるのは大変だし、いちいち手間でモバイル用途と相容れないことの方が余程問題です。

 

↑マイコンチップを交換可能とした苦肉の策は少々不格好

 

結局、対応策としては、ATtiny85マイコンチップ用のICソケットに小型の基板を新たに取り付けるようにし、その追加の基板をアクリル板の外まで延長した部分にATtiny85マイコンチップ用のICソケットを別途設けて、不格好ですがアクリル板をはずさなくてもマイコンチップが交換できるようにしました。

 

コイン電池のホルダーですが、かなり固くて電池の出し入れに苦労するので、ウラ面に実装しました。他のパーツとぶつかることはないにしても、配線を傷つける心配が多少あります。

 

結果的に、ミニゲーム機といいながら、少々分厚いTinyJoypadができあがりました。

 

なお、今回作製のTinyJoypadの抵抗はすべて10KΩのものの組み合わせで抵抗分圧を実現しています。これにより、スケッチ(プログラム)の一部修正が必要でした。

 

※詳しくは、こちらを参照してください。

 

 

書き込み用基板の作製

 

↑ATtinyシリーズへの書き込みのためにUSBasp(左)用に作成したボード(右)

 

ミニゲーム機TinyJoypadが完成したことだし、いろいろゲームをインストールしてたのしみたいところですが、手持ちのATtiny85マイコンチップは、わずか4個。

 

せめて後5個位は欲しいところなのですが、1,000円の出費は辛い。しかたなく、今は取っ替え引っ替え書き込みを繰り返し、使いまわしている有様です。

 
そのような状態ですから、ATtiny85にスケッチを書き込む際に、毎回配線しなければならないのは面倒くさいものです。あらかじめ基板上に配線を施したものを用意しておけば楽ということで、書き込み機USBaspに接続して使うボードをつくりました。
 
ATtiny85以外のATtinyシリーズを使う予定は今のところありませんが、ATtiny44及び同84用、ならびにATtiny2313、同4313用にも使えるように14ピンと20ピンのICソケットを基板に設けて配線、8ピンのATtiny85、同13用にはサイズが違うものの一部のピン配置が同じであることからATtiny2313などと同じ20ピンのICソケットを共用することで、併用できるボードとしました。
 
※この項はMira&Luna’s nursery labの記事のものまねです。
 

 

Arduinoが支持されるワケだ

Raspberry Pi Pico、ついでArduino Nano、そしてATtiny85マイコンチップと試してきて思うのは、これらOSをもたず、パソコン上でプログラムを開発しコンパイルしてマイコンチップに書き込むタイプのマイコンボードのメリットです。

パソコンがなければマイコンボード単体では開発が進められず、またプログラムのコンパイルの必要から、当初これらマイコンボードに抱いていた面倒臭さと敷居の高さは、実際に使っているうちに懸念するほどのことではないと知りました。
 
そればかりか、OSがないおかげで電源ONと同時にプログラムが起動し、またシャットダウンもOSの終了を待つ必要がないので、電源を引っこ抜くだけで済となれば、これほど使いやすいことはありません。
 
複雑なことをするわけでなく、シンプルなタスクを実行させるのなら、これらマイコンボードでこと足りて、かつ便利でしょう。そりゃ多くの方がArduinoを支持する理由が分かった気がします。