第4弾!
ボタンのステータスを読み取ります
さてさて、加速度、磁気、温度、そして今回はボタンです。
micro:bit、今回は百均で売ってた単三電池→USB5V出力するモバイルバッテリーで動かしてみました。いい感じ。
micro:bit側のプログラミングは全く変わりません!
相変わらず、Bluetooth系のサービスをすべて初期化するコードです。
今回も変える必要がないので、このままの実装で進めます。
bluetooth.startAccelerometerService() bluetooth.startButtonService() bluetooth.startIOPinService() bluetooth.startLEDService() bluetooth.startTemperatureService() bluetooth.startMagnetometerService()
残すはあとLEDとIOピンか・・・。
HTML側のプログラミング
例によって、このプロファイル仕様書を参考にしています。
Bluetooth Developer Studio - Profile Report
AボタンとBボタンにそれぞれキャラクタリスティックが割り振られていて、それぞれNotifyを受けることができます。ステータスは3種類で、押されていない/押されている/長押しされている。Androidとかの長押し判定と違って、2-3秒ボタンを押してないと長押判定されません。
早速ですが、コードはこちら。
で、サンプルページはこちら。
ボタンを押したり、長押しすると、表示が変わります。
はい。月食見忘れた!