UART

uart モジュールを使用すると、シリアルインタフェースを使用してボードに接続されたデバイスと通信できます。

関数

microbit.uart.init(baudrate=9600, bits=8, parity=None, stop=1, *, tx=None, rx=None)

指定の txrx 端子と指定のパラメータでシリアル通信を初期化します。正しい通信のためには、両方の通信デバイスでパラメータが同じでなければならないことに注意してください。

警告

外部端子で UART を初期化すると、同じハードウェアを使っている USB で Python のコンソールにアクセスできなくなります。コンソールを元に戻すには、tx または rx を渡すことなく(あるいはこれらの引数に None を渡して)UART を再初期化する必要があります。つまり、uart.init(115200) を呼び出すだけで、Python のコンソールを復元できます。

baudrate は通信速度を定義します。一般的なボーレートは次のとおりです:

  • 9600
  • 14400
  • 19200
  • 28800
  • 38400
  • 57600
  • 115200

bits は送信するバイト列のサイズを定義します。現在のところは bits=8 だけをサポートしています。parity パラメータはパリティのチェック方法を定義するもので、None, microbit.uart.ODD, microbit.uart.EVEN を指定できます。stop パラメータは、ストップビットの数を知らせるもので、このボードでは 1 にする必要があります。

txrx を指定しない場合、内部の USB-UART TX/RX 端子を使用して micro:bit」 の USB シリアルコンバータに接続し、UART を PC に接続します。望みの端子オブジェクトを txrx パラメータに渡すことにより、他の端子を使うように指定できます。

注釈

デバイスを接続するときは、ワイヤを 「交差させる」 ことを確認してください。ボード上の TX 端子はデバイスの RX 端子と、RX 端子はデバイスの TX 端子と接続する必要があります。また、両方のデバイスのグランドピンが接続されていることを確認してください。

uart.any()

なにか待っている文字があれば True を返し、さもなければ False を返します。

uart.read([nbytes])

文字を読込みます。nbytes が指定されていれば、そのバイト数まで読み込みます。

uart.readall()

できるだけ多くのデータを読み込みます。

戻り値: バイト列のオブジェクト。タイムアウト時は None

uart.readinto(buf[, nbytes])

buf にバイト列を読み込みます。nbytes が指定されていれば、そのバイト数まで読み込みます。さもなければ len(buf) のバイト数まで読み込みます。

戻り値: 読み込んで buf に格納したバイト数。タイムアウト時は None

uart.readline()

1行、すなわち改行文字まで読み込みます。

戻り値: 読み込んだ行。タイムアウト時は None 。返すバイト列に改行文字は含まれます。

uart.write(buf)

バイト列の buffer をバスに書き出します。

戻り値: 書き出したバイト数。タイムアウト時は None