1
私はコイン受入れ機とラズベリーを使ってプロジェクトを進めています。私は、コインアクセプターからの出力をテストするために、次のコードを持っている:Pythonシリアルが読み込みを停止します
import serial
from time import sleep
ser = serial.Serial('/dev/ttyUSB0', 4800, 8, 'N', 1, timeout=None)
while True:
line = ser.read(ser.inWaiting())
if len(line) > 0:
print ord(line)
ser.close()
すべてが正常に動作し、私はアクセプターから、私はコインをドロップするたびに出力が得られます。しかし、しばらくすると、読書は止まる。シリアルポートモニタを備えたウィンドウでは動作し、毎回出力されます。
ありがとうございます!
試しているのですか? –
'' ord(line) ''は一度に複数の文字を読み込んでしまうと失敗するでしょう... – jasonharper
'.isOpen'を使ってポートが閉じているかどうかを検出し、 。また、デバッグログを実装して、何が起きているかを把握してください。 – thephez