Как читать 100 или более строк в секунду через последовательный порт Py
Программа для получения данных от последовательного порта
import serial
import time
ser = serial.Serial(
port='/dev/ttyAM0',
baudrate=57600,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=1)
while 1:
BytesToRead = ser.inWaiting()
x = ser.read(BytesToRead)
print x
Ввод - @1,12,5,0:0:1# эти типывывода 100 строк в секунду - смешанные данные с некоторыми данными, пропущенными и перемешанными
Примечание. Строки получены от Arduino через zigbee. Что я делаю неправильно? Есть ли проблема задержки, или я неправильно читаю строки через последовательный порт?
1 ответ
Если нет байтов для чтения, не пытайтесь их прочитать или распечатать.
while 1:
BytesToRead = ser.inWaiting()
if BytesToRead > 0:
x = ser.read(BytesToRead)
print x