Pyserial Readline

Vaibhhav Khetarpal 2021年12月2日
Pyserial Readline

このチュートリアルでは、Python の serial モジュールで read() または readline() 関数を使用する方法を紹介します。

read() および readline() 関数は、Python の serial モジュールの重要な部分です。serial モジュールは、シリアルポートにアクセスするために必要なすべての機能と必需品を提供します。

基本的に、serial モジュールは、Linux、Windows、OSX などで実行される Python のバックエンドを提供すると言えます。簡単に言えば、シリアルが適切であると判断したバックエンドを自動的に選択することを意味します。

一度に複数の文字を読み取る必要がある場合は、read() 関数とそのアプリケーションから始めましょう。serial モジュールの read() 関数は、指定されたテキストを一度に 1 バイトずつ読み取るために使用されます。これには、関数に読み取らせたいバイトの最大量のカウントを示すパラメーターが含まれています。

次のプログラムは、read() 関数を使用して、一度に複数の文字を読み取ります。

# general code of the serial module
import serial

ser = serial.Serial()
ser.port = "COM2"
ser.baudrate = 19200
ser.timeout = 0
x = ser.read()  # This function will read one byte from the given variable.

同様に、readline() 関数を使用できます。read() 関数と非常によく似た動作をしますが、代わりに、一度に 1 行全体を読み取ります。

ただし、readline() 関数を適切に実装するには、タイムアウトを定義する必要があります。さらに、readline() 関数は、行末または\n 改行文字である eol に遭遇した後にのみ 1 行の読み取りを停止するため、この関数を使用するときは、すべての行にそれを適用する必要があります。

次のコードは、readline() 関数を使用して、一度に複数の文字を読み取ります。

# general code of the serial module
import serial

ser = serial.Serial()
ser.port = "COM2"
ser.baudrate = 19200
ser.timeout = 0
line = ser.readline()  # This function reads one line at a time.
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn