Microbit モジュール

microbit モジュールは、ボードに内蔵のハードウェアすべてにアクセスするためのものです。

関数

microbit.panic(n)

すべての実行を停止するパニックモードに入ります。このモードに入ると micro:bit ディスプレイにエラーコードをスクロール表示し再起動が必要となります。

microbit.panic(255)
パラメータ:n -- エラーコードを示す 0 から 255 までの任意の整数。
microbit.reset()

ボードを再起動します。

microbit.running_time()
戻り値:ボードの電源が入ったか再起動してからの経過時間(ミリ秒)。
microbit.scale(value, from_, to)

ある区間から別の区間に値を変換します。

たとえば、摂氏30度を華氏に変換する場合は次のようにします:

temp_fahrenheit = scale(30, from_=(0.0, 100.0), to=(32.0, 212.0))

これは入力と出力の間の値を変換するのに便利です。たとえば、加速度センサーの x 値をスピーカーの音量に変換できます。

パラメータ to に指定した数値のいずれかが浮動小数点数(10.0 などの数)である場合、この関数は浮動小数点数の数値を返します。もし両方とも整数(10 などの数)であれば、整数を返します:

returns_int = scale(accelerometer.get_x(), from_=(-2000, 2000), to=(0, 255))

負のスケーリングもサポートしており、たとえば scale(25, from_=(0, 100), to=(0, -200)) は -50 を返します。

パラメータ:
  • value -- 変換する数値。
  • from -- 変換元の区間を定義するためのタプル。
  • to -- 変換先の区間を定義するためのタプル。
戻り値:

to に指定した区間に変換された値。

microbit.set_volume(volume)

(V2 のみ) micro:bit スピーカーとピンの出力ボリュームを設定します。

microbit.set_volume(127)
パラメータ:volume -- 設定するボリュームを 0 から 255 までの間の整数で指定します。
microbit.sleep(n)

n ミリ秒だけ待機します。1 秒は 1000 ミリ秒なので、 microbit.sleep(1000) は 1 秒間実行を一時停止します。

パラメータ:n -- 待機するミリ秒を示す整数または浮動小数点数。
microbit.run_every(callback, days=None, h=None, min=None, s=None, ms=None)

time 引数で指定した間隔で関数を実行するようスケジュールします。

run_every は2つの方法で使えます:

  • デコレータ として使用 - スケジュールする関数の上に置きます。たとえば次のように使います:

    @run_every(days=1, h=1, min=20, s=30, ms=50)
    def my_function():
        # ここで何かを実行
    
  • 関数 として使用 - コールバックを位置引数として渡します。たとえば次のように使います:

    def my_function():
        # ここで何かを実行
    run_every(my_function, s=30)
    

各引数は異なる時間単位に対応し、それらは加算されます。つまり、 run_every(min=1, s=30) は1分半ごとにコールバックをスケジュールします。

コールバック関数内で例外が発生した場合、その関数のスケジューリングが解除されます。これを避けるには try/except で例外をキャッチします。

パラメータ:
  • callback -- 指定した間隔で呼び出される関数。
  • days -- スケジューリングのための日数を設定します。
  • h -- スケジューリングのための時間を設定します。
  • min -- スケジューリングのための分を設定します。
  • s -- スケジューリングのための秒を設定します。
  • ms -- スケジューリングのためのミリ秒を設定します。
microbit.temperature()
戻り値:micro:bit の温度(摂氏)を示す整数。

クラス