私の PC には Python 2.7.4 と pyserial-2.5 win32 がインストールされています。ここでは、マイクロコントローラ デバイスをマスター (プライマリ) として使用し、PC をスレーブ (セカンダリ) として使用しています。ここでは、マイクロコントローラがデータを送信するたびに、私の PC はシリアル ポートを介してデータを受信する必要があります。連続データを受け取る Python のコードが必要です。ここで、送信されるデータのサイズは常に変化します。ここにデータを送信するコードを書きました。コードは次のとおりです。
import serial
ser= serial.serial("COM10", 9600)
ser.write("Hello world\n")
x = ser.readline()
print(x)
このコードを使用して、他の PC にデータを送信できます。他の PC でハイパーターミナルを開いてクロスチェックすると、送信されたデータを確認できます (hello world)。
データを受け取るコードも書きました。
import serial
ser=serial.serial("COM10", 9600)
while 1:
if ser.inwaiting():
val = ser.readline(ser.inwaiting())
print(val)
HyperTerminal からデータ (お元気ですか) を送信すると、上記のコードを使用して PC でデータを受信できます。
これまではすべて問題ありません。
私の質問は、マイクロコントローラーが可変時間間隔で可変データを送信している場合、Python を使用して PC でそのデータを受信する必要があるということです。受信したデータを格納するためにバッファを使用する必要がありますか? はいの場合、コードはどのようになりますか? Pythonでバッファを使用する理由と方法は? 私のインターネットでの検索によると、バッファは文字列をスライスするために使用されます。