加速度センサーを利用して大きく動いたらLEDを点灯させたままにする

IchigoJam + FaBo Starter Kitで加速度センサーを利用して大きく動いたらLEDを点灯させたまましてみましょう。勝手に引き出しが開けられたかどうかなどをチェックできます。サンプルでは全部の加速度を検知していますが、引き出しの方向に合わせてX軸かY軸だけの加速度を調べるのがよいでしょう。
センサーは以下のように接続します。加速度センサーはI2Cに、LEDはLEDに接続します。なお、LEDはIchigoJam本体のものを利用しても構いません。本体側のLEDも大きく動かした場合には点灯した状態になります。



IchigoJamの電源を入れ以下のようにプログラムを入力します。

10 CLS:CLV:LED 0
20 POKE #800,#31,0,#2D,8
30 POKE #810,#32,6
40 N=I2CW(#53,#800,1,#801,1)
50 N=I2CW(#53,#802,1,#803,1)
60 N=I2CW(#53,#810,1,#811,1)
70 N=I2CR(#53,#810,1,#820,6)
80 X=PEEK(#820)+PEEK(#821)*256
90 Y=PEEK(#822)+PEEK(#823)*256
100 Z=PEEK(#824)+PEEK(#825)*256
110 IF ABS(X-A)>10 OR ABS(Y-B)>10 OR ABS(Z-C)>10 AND F=1 THEN LED 1
120 A=X:B=Y:C=Z:F=1
130 LOCATE 0,0
140 ?"X:";PEEK(#820)+PEEK(#821)*256;" "
150 ?"Y:";PEEK(#822)+PEEK(#823)*256;" "
160 ?"Z:";PEEK(#824)+PEEK(#825)*256;" "
170 WAIT 30
180 GOTO 60

RUNと入力しプログラムを実行します。加速度センサーを動かすとLEDが点灯します。ゆっくり動かせばLEDは点灯しません。

目次に戻る