目次 このページのソースコードを表示

コントローラー

公開日:
更新日:

Arduinoを用いた電子工作でよく使うものの一つにスイッチがあります. 一つか二つのスイッチを使うのなら問題はないのですが、大量のスイッチを用いた電子工作となるとスイッチ一つに一つのピンを消費するわけにはいかなくなります.

例えば、ちょっとしたゲーム機を作るとしましょう. 十字キー、ABボタンなどで少なくとも6つぐらいのスイッチが必要となります. またグラフィック液晶との接続に13ピンほど使います.ピンが足りません.一つのピンで複数のスイッチ入力を読み取る必要があります.

また別の問題として仮に上の問題を解決―例えば抵抗による分圧方法によって解決―したとしても同時入力ができない問題があります. ゲーム機を作るとしてボタンの同時入力ができないのはかなり大きな問題でしょう.

このページではこれらの問題を解決する一つの方法を説明します。

このページで紹介する方法で以下のことができます。

  • 一ピンあたりボタン六個の入力が可能
  • 同時入力も可能
  • コントローラ製作に関することについて説明します. 説明の項目は以下のとおりです.

    • 部品入手
    • 製作
    • 説明
    • 参考文献
  • Controllerとは、このページで紹介したコントローラーを制御するものです。このヘッダファイルにある関数でコントローラーからのスイッチ情報を読み取りどのボタンが押されているかを判断します。Controllerができることは次の通りです。

    • ボタンが押されている間もそのボタン入力を検出すること(トリガー形式)ができます
    • ボタンが一回押されてそのあとも押されているときはそのボタン入力を検出しないこと(非トリガー形式)ができます
    • インスタンス生成でコントローラーを簡単に追加できます
    • ボタンの同時入力に対応しています

    Controllerを改良、強化、何でもしてください(;´∀`)

「https://contentsviewer.work/Master/Arduino/ControllerRoot」から取得