シリアル ポート経由で送信されたデータを開いてテキスト ファイルに記録するプログラムを作成しています。現在、実行時にシリアル ポートを再構成できるようにする機能を追加しています。自分にとってシンプルに保つために、一度に1つずつ変更する変数を選択するようにユーザーに促します(エレガントなソリューションもありがたいです)。
シリアル インスタンスを作成する pyserial 関数 (serial.Serial()) には、次のパラメーターがあります。
import serial
ser = serial.Serial(port=0, baudrate=9600, bytesize=8, parity='N', stopbits=1, timeout=None, xonxoff=0, rtscts=0, writeTimeout=None, dsrdtr=None, interCharTimeout=None) #default values shown
ほとんどが int() 引数ですが、そうでないものもあります。つまり、「タイムアウト」です。
int(raw_input("for the int() type variables))
を使用すると int 変数を安全に割り当てることができることはわかっていますが、デフォルトとして None を持つ変数input()
には、可能な None 値を適切に割り当てる関数が必要になります。
input() は悪用される可能性があるため、通常は推奨されないことを他の場所で読みました (eval() に関する何か?)。では、これらの入力をどのように処理すればよいですか? つまり、writeTimout = str(None) で serial.Serial() を使用すると、エラーがスローされます。
ありがとう!