裸のATmega8 を、外部クロック 16Mhz で動かす。電源は、ゲーム機側からの5V。データは、1ピンだけ、3.3Vらしいので、ロジックレベルコンバータを挟んだ。ボタン入力のピンも小細工せずに足りた。
![ゲームキューブ・コントローラ](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmkXeVkLKAvbx5nEYtIUtPBufNLDczBIHzxGAxBsrf5FWEurSnBxLhxRwVHzbyGk1KM_WLBq-eRT_qaUhpKMON1SM9D_9QPD_hxssLCQF-1txklHjE8-_WKdmcqVoYSlW2Nzg7p5FysFvyXJbQ4bysNACtOC1MTqXPqbABLftv4yyl14l0A8QoaiDtjjI/s1600/gc_cont2.jpg)
![ゲームキューブ・コントローラ](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM599WlH2OggNTFBwmqu-T6UWlZezf-oL0XwKQ1H8EdwFHrxpmarWk1_gGZpyVfcCsN8U_tlCAmK863N8aETgYMCiqZaFBdJsvIANVe1rVvT8wFkrmHPAX4YnFA6p83iDivQbV-7AOeYQvOdnqwxbUpCE2U5jWrUCH8dj0J-4e3Tgxa6TffW8QjYtcE2A/s1600/gc_cont1.jpg)
既にグチャグチャの配線を作り直すのは、新規に作るより大変。最初、動かなくてあせったが、クロック指定の Fuse の書き換えが出来ていなかった。
avrdude -p m8 -c usbtiny -D -u -U hfuse:w0xC9:m
![アナログスティックのエミュレート](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBm2UJrxFEmyPex8inJ2LHK-WRSuankdaGxYDT3P9rplZNXA_cxlp00kDjmRSEgSr8s8n3plrmUOTtcP6MNV2Vk7xThHhEcorYi6LW2hC5kERwqbdBK3gWUXG-aCRYpxNAbuV0M8QW9eRYcO28iaSW7Eq7ubc5S3f-sWLP4R1oHLFIhOlybBLtH7OUrKg/s1600/gc_cont3.jpg)
インジケータの2色LEDと、赤ボタン・オルタネイトスイッチを追加して、レバーでのアナログ入力(上下左右)に切り替えられるようにした。十字ボタンで入力できない場合に使う。
前のゲームキューブの本物コントローラの基板を乗っ取るよりもスマート。使い道無く余っていた ATmega8 を有効利用できて良かった。ボタンが劣化しているので、そのうち、同時押しや、連射回路無しのシンプル版を、新たに作ることにしよう。
0 件のコメント:
コメントを投稿