2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

micro:bitのLED表示は表示時間(Delay)があるがそれをキャンセルさせたい

Posted at

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秒)の表示時間
となります。

image.png

サンプルコード

image.png

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?