課題
ソフトウェアをシンプルに保つため、ボードは地面と平行な状態でパンチすると仮定します。パンチの大きさを 測定するには、X 軸と Y 軸の加速度の両方を考慮する必要があります (Z 軸は単に重力を反映しているだけなので無視します)。さらに簡単にするため、B ボタンが自分に近く、 A ボタンが自分から遠くなるようにボードを持ち、そのまま自分から遠ざける方向にパンチすると仮定します。 これは、正の X 方向にパンチすることを意味します。
punch-o-meter は次のように動作しなければなりません。
- デフォルトでは、アプリはボードの加速度を「観測」していません。
- 大きな X 軸加速度が検出されたとき(つまり、加速度があるしきい値を超えたとき)、 アプリは新しい測定を開始しなければなりません。
- その測定区間のあいだ、アプリは観測された最大加速度を追跡し続ける必要があります
- 測定区間が終了したら、アプリは観測された最大加速度を報告しなければなりません。値の報告には
rprintln!マクロを使えます。
ぜひ試して、どれくらい強くパンチできるか教えてください ;-)。
注 この課題に役立つ追加の API がもう 1 つありますが、まだ 説明していません。それが、高い g 値を測定するために必要な
set_accel_scaleです。