Loop de leitura sem bloqueio PySerial
Eu estou lendo dados em série como este:
connected = False
port = 'COM4'
baud = 9600
ser = serial.Serial(port, baud, timeout=0)
while not connected:
#serin = ser.read()
connected = True
while True:
print("test")
reading = ser.readline().decode()
O problema é que isso impede que qualquer outra coisa seja executada, incluindo o framework web bottle py. Adicionandosleep()
não vai ajudar.
Alterando "while True" "to" while ser.readline (): "não imprime" test ", o que é estranho, já que funcionava no Python 2.7. Alguma idéia do que poderia estar errado?
Idealmente, eu deveria ser capaz de ler dados seriais apenas quando estiver disponível. Os dados estão sendo enviados a cada 1.000 ms.