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

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

7.1. evtest

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

evtest [INPUT DEVICE]

図7.1 evtestコマンド書式


[INPUT DEVICE]にはインプットデバイスファイルを指定します。指定可能なインプットデバイスファイルを表7.1「インプットデバイスファイル」に示します。

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

デバイスファイルデバイス
/dev/input/event0SW1(ボタン)

[警告]

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

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

7.2. swmgr

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

swmgrは、図7.2「swmgrコマンド書式」のように使用します。

swmgr [BUTTON] [LOOP] [COMMAND]

図7.2 swmgrコマンド書式


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

表7.2 swmgrに対応するボタン

ボタン説明
sw0SW1

[警告]

SW2はリセットスイッチです。誤って押した場合は、Armadillo-460がリセットされてしまいますのでご注意ください。

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

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

7.2.1. ボタンが押されたときにコマンドを実行する

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

[armadillo ~]# swmgr sw0 1 date

図7.3 SW1が押されたときに時刻を表示する