M5StackにWii/SFCのゲームパッドをつないでみた
M5Stackにゲームパッドをつないでみました。
Wiiのクラシックコントローラを繋ぐのは以前にやったことがあるのですが
AITENDOでWiiクラシックコントローラのコネクタとハウジングが売ってたので。
I2C接続なせいか、普通に組み込むとディレイが酷くてゲーム速度全体が低下する&画面描画に割り込みを使ってる(?)のかI2C読み込みでフリーズするので、組み込みにチョット工夫(I2C読み込みのスレッド化)が必要でした。
手持ちのWiiクラシイクコントローラは以前、Arduinoに繋いでみるテストの時にコネクタを壊してしまったので、壊れていないのをハードオフで探してきたのですが…モノがない上に1980円と割とお高かったです。
折角なので (;^ω^)
ハードオフの青箱にゴロゴロ入っているスーパーファミコンのパッドも試してみました。
SFCのゲームパッドは一般的(?)なシフトレジスタでボタンオ状態を送っています。
扱いは単純でWiiクラシイクコントローラより使い易いです、お値段も安いですし。
コチラはハウジングが売ってない(物はあったけど現在では品切れ)で手に入らず、コネクタとハウジングを普通のHXコネクタとハウ刃部に付け替えています。
M5Stackは使えるGPIOピンが以外に少なくてピン割り当てに悩みました。
(G2、G5ピンはブート信号を兼ねているので、ココに外部機器をつなぐとスケッチの書き込みが出来なくなったりする。
DACは入力に使えないしADCは出力に使えない。
普通のGPIOピンG25、G26のうちG25は内蔵スピーカーにつながっている)

