第7章 インプットデバイス

この章では、インプットデバイスのイベントの取得方法について説明します。Armadillo-440では、ボタンがインプットデバイスとして実装されています。ボタンドライバーの仕様は、「Armadillo-400シリーズソフトウェアマニュアル」の「ボタン」の章を参照してください。

7.1. evtest

evtestコマンドを使用することで、どのようなインプットイベントが発生したか確認することができます。evtestは、図7.1「evtestコマンドフォーマット」のように使用します。

[armadillo ~]# evtest /dev/input/eventX

図7.1 evtestコマンドフォーマット


/dev/input/eventXに指定するデバイスファイルは表7.1「インプットデバイスファイル」を参照してください。

表7.1 インプットデバイスファイル

デバイスファイルデバイス
/dev/input/event0ボタン
/dev/input/event1タッチスクリーン[a]

[a] 「Armadillo-400 シリーズ LCD 拡張ボード」の接続時に利用可能


[警告]

イベントデバイスの番号は、検出された順番に割り振られます。そのため、USB キーボードなど他のインプットデバイスが起動時に検出されると、デバイス番号は変わる可能性があります。

evtestを終了させる場合は、「Ctrl + C」キーを入力してください

7.2. swmgr

swmgr コマンドを使用することで、ボタン入力に応じて任意のコマンドを実行することができます。

swmgrは、図7.2「swmgrコマンドフォーマット」のように使用します。

[armadillo ~]# swmgr [BUTTON] [LOOP] [COMMAND]

図7.2 swmgrコマンドフォーマット


BUTTONには、イベントを取得したいボタンを指定します。対応するボタンは、表7.2「swmgrに対応するボタン」のとおりです。

表7.2 swmgrに対応するボタン

ボタン説明
sw0SW1
sw1LCD_SW1[a]
sw2LCD_SW2[a]
sw3LCD_SW3[a]

[a] 「Armadillo-400 シリーズ LCD 拡張ボード」の接続時に利用可能


LOOPには、イベントを待つ回数を指定します。0を指定すると無制限になります。

COMMANDには、イベントが発生した時に実行する動作を記述します。

7.3. swmgr使用例

SW1が押されたときに時刻を表示するには、図7.3「swmgr使用例」のようにコマンドを実行します。

[armadillo ~]# swmgr sw0 1 date

図7.3 swmgr使用例