micro:bitのLED表示
micro:bitのLED表示は表示時間(Delay コンマ数秒程度?)が設定されている。
子ども向けということもあり、大小のハートを並べてドキドキアニメーションするハートを作ったりできるのはむしろ良いことです。
二つのハートを並べても間に一時停止を入れないとだめ、二つ目のハートの後ろにも入れないとだめ、なんていうことをいきなり教えるよりは表示時間(Delay)があらかじめ設定されているのは親切設計です。
LED表示にDelayがいらない時には?
色々なボタンを押したときに即micro:bit側に反映させたいときはその新設設計が仇になります。
1つ目は問題ありませんが、2つ目以降は前の表示時間が経過するまで待つ必要があります。
通常文字や数字を表示した後に「LED画面に表示」ブロックですべてのLEDを消灯にする、か「表示を消す」ブロックを配置すれば消えますが、表示時間が経過した後きいてきます。
方針
今回LEDが表示されたことをトリガーにして経過時間を極小(サンプルでは0.1秒)にしてLED表示を消すという方法をとってみました。
X:0,Y:0のLEDが光っているかをトリガーにしています。
・Aボタンを押したときに出るAはトリガーにひっかからないので通常の表示時間
・Bボタンを押したときに出るBはトリガーにひっかかるので設定した時間(0.1秒)の表示時間
となります。
サンプルコード

