3

私の 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でバッファを使用する理由と方法は? 私のインターネットでの検索によると、バッファは文字列をスライスするために使用されます。

4

1 に答える 1