COM3上のデバイスにキャラクターを送信するように設定された単純なPythonスクリプトがあります。(これはWindows XPで実行されています)デバイスは文字を正常に受信しますが、スクリプトが終了すると、または
ser.close() #ser is an instance of the `serial` method `Serial`
シリアルポートのDTRラインをHighに設定し、デバイスをリセットします。
これに戸惑い、PySerialのドキュメント(http://pyserial.sourceforge.net/)をざっと見てみると、モジュールには、Serialインスタンスが削除されたときに関数__del__
を呼び出すメソッドがあることがわかりました。ser.close()
このメソッドをオーバーライドする方法はあり__del__
ますか?
(デバイスのリセットラインをDTRラインから切断する必要はありません)
以下は私が使用している基本的なコードです:
import serial
ser = serial.Serial()
ser.port = 2 #actually COM3
ser.baudrate = 9600
ser.open()
ser.write("Hello")
ser.close()