ジョイスティックを使用する/sense hatを動かす part7
前回は、センサーを触ってみましたが、引き続き、ジョイスティックにも触れてみました。
Sense HAT では、ジョイスティックが押され、保持され、リリースされたときを、上、下、左 、右、中央の5つの異なる方向で検出できます。

ジョイスティックの動きを検出
Sense HAT ジョイスティックは4つのキーボードカーソルキーにマッピングされ、ジョイ スティックの中央クリックは Return キーにマッピングされます。
つまり、ジョイスティックを使用すると、キーボードのキーを押すのとまったく同じ効果が得られます。下方向は、HDMIポートが下を向いていることを忘れないでください。
それでは、チュートリアル(Using the joystick)に従って動作検証をしてみましょう。
from sense_hat import SenseHat
sense = SenseHat()
while True:
for event in sense.stick.get_events():
print(event.direction, event.action)

ジョイスティックを動かすと、ご覧のような表示がなされます。
方向をLEDマトリクスに表示
ジョイスティックがどの方向に押されたかに応じて、LEDマトリクスに文字U、D、L、Rま たはMのいずれかを表示します。

この動画では、眩しすぎて、何となく文字U、D、L、Rま たはMが表示されているようにしかわからんですな!大変申し訳ありません!
関数呼び出しのトリガ
Sense HATのジョイスティックが特定の方向に動かされるたびに、関数を呼び出すこともできます。
たとえば、ジョイスティックが押し上げられる(direction_up)などの特定のイベントを継続的に取り出し、それに応答して関数を起動するようにプログラムに指示できます。
sense.stick.direction_up = pushed_up
イベントによってトリガーされた関数は、パラメーターを持たないか、またはイベントをパラメーターとして受け取ることができます。
それでは、次の例を動かした結果を動画にしてみました。

このプログラムは、ジョイスティックを押すと、4つの異なる色でLEDマトリックスを満たす表示がなされます。下で青、右で黄色、上で赤、左で緑でLEDが表示されます。
sense hat に関する記事は他にもあります。是非、ご覧ください。
- sense hatの取付けとLEDにテキスト表示を実施
- sense hatのLEDマトリクス上に様々なイメージを表示する
- sense hatのLEDマトリクス表示の向きの設定を変更する方法
- sense hatに搭載のセンサーにて気圧、温度、湿度を測定する
- 動作の検出をする/sense hatを動かす part6
- ジョイスティックを使用する/sense hatを動かす part7 本記事です
ディスカッション
コメント一覧
まだ、コメントがありません