Python - UART и Ord () - PullRequest
       21

Python - UART и Ord ()

0 голосов
/ 13 февраля 2020

Недавно я создал скрипт, который считывает данные из порта UART и помещает полученные данные в файл. Я продолжаю читать, пока получаю пустой элемент, поскольку я использую ord ().

while (value == []) or (value == ''):
    value = ser.read(size = 1)

Я попробовал это и отправил данные с журналами, как HTerm, и не получил никаких проблем.

И Когда я использую его с другим скриптом, я замечаю, что иногда отсутствует байт, который сдвигает все данные. Чтобы прояснить, что происходит, я добавил отладку, которая отображает рамку и положение в кадре. Для размера кадра 1:

Frame 1 : 255,1
Frame 2 : 255,1
Frame 3 : 1
Frame 4 : 255,1
...

То же самое происходит с рамкой размера N, затем я получаю две позиции

Frame 1 : 255,1,255,2,3,255,4, ...

Скорость передачи данных установлена ​​на 115 200 бод на обоих устройствах.

Разве while l oop не должен ли избежать этого случая (тайм-аут, я полагаю?)?

Версия Python: Python 2.7.13

Спасибо!

...