Найти - Пользователи
Полная версия: Приём с СОМ порта
Начало » Python для новичков » Приём с СОМ порта
1
airnbrew
Делаю прошивку для устройства, устройств много, железо менять не выйдет. Нужно отлаживать.
Большого индикатора нет, есть пара светодиодов. С одного из них вывел сигнал в СОМ порт.
Прошивка по размеру в упор, HEX2BCD и любое текстовое форматирование не влазит. Прошивка выдаёт в порт подряд два байта с интервалом в полсекунды. Все умные вещи нужно делать на компе.

Как правильно получить эти два байта и по времени разобраться, какие в паре первый и второй?
Опрос порта в цикле с интервалом в 0,1 с сбоит по-чёрному.
В питоне я третий день. Прикольно ))
py.user.next
А ты не можешь в самих байтах передавать эту информацию? Кто первый, кто второй. А может, вообще какой-то третий байт нужен, типа контрольный.

airnbrew
Прошивка выдаёт в порт подряд два байта с интервалом в полсекунды.
А если она просбоит и передаст с интервалом в 0.4 секунды или в 0.6 секунды?
airnbrew
CRC бы посчитал… Думать надо. На устройстве простой сдвиг сделать легче всего.
Запросто. На 9600 время между байтами явно меньше. В технике много больше/мньше - различия на десятичный порядок.
py.user.next
Ну, чаще всего устройства с помощью питона обрабатываются так, что либо там в самой информации всё понятно, либо там какой-то признак конца добавлен к информации. А вот эта скорость туда-сюда - это всё туфта. Как минимум, программа там до машинных кодов должна быть скомпилирована, чтобы время не путать. А это языки типа C, C++, Assembly и подобных.
xam1816
airnbrew
Как правильно получить эти два байта
У меня вопрос, по какому протоколу передаются данные?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB