アナログ入力によるロータリーエンコーダの読み出しとちょっと関係あり。今回はマトリックスキーを扱ってみた。

 12Key マトリクスキーボード JK-42-2(共立エレショップ) のような3×4のテンキー、中はマトリックス配線になっている。スイッチが個別に扱えれば抵抗分圧式で可能だが、解体して配線し直すわけにもいかない。
抵抗分圧式の例:I/Oピン一つで読み取れるキーパッドの製作(しなぷすのハード製作記)

 ではどうしようか。横方向で分圧したあと、縦方向でさらにその範囲内で分圧すればよさそうだ。

ankey_2017-04-11 00_37_52

 実際はこんな感じで配線。
ankey_2017-04-11 00_39_34

 Arduinoのスケッチはこんな感じ。雑なコードですまん。
https://gist.github.com/houmei/7c42c60a56e6f63c08467aaa3296722b

 同時押しすると別のキーになってしまうことがある。(追記:ADC入力値の範囲を絞ることで若干改善)うまく抵抗値を選ばないといけないかも。計算したExcelのシートをどっかになくしてしまった。

2017ankey1

2017ankey2

2017ankey3