Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Python: Общие вопросы > Serial uart |
Автор: mrprim 3.8.2016, 16:11 | ||||
работаю я с процом на котором в прошивке для теста всё выглядить вот так UART_write("recive accept"); тоесть проц на уарт порт постоянно шлёт строку мне нужно напитоне словить её, а мне постоянно приходит None
|
Автор: mrprim 3.8.2016, 16:39 | ||
всё норм есть программатор который и цепляется по уарту к компу и там всё напрямую, со стороны проца точно всё отлично, проверено на различного вида терминалах. Сам проц и читает и отдает по уарту всё хорошо. проблема именно в питоне и не могу понять где.. |
Автор: mrprim 3.8.2016, 23:14 |
выяснилось что проблема в обработке очереди, выяснил методом тыка написал serial = serial.Serial( port='COM8',\ baudrate=9600,\ parity=serial.PARITY_NONE,\ stopbits=serial.STOPBITS_ONE,\ bytesize=serial.EIGHTBITS,\ timeout=0) и пользуюсь встроенным протоколом но мне нужны свои read write с очередью помогите исправить пожалуйста |
Автор: Bulat 4.8.2016, 08:58 |
Ну не знаю. Программированием ком-портов на питоне не занимался! Только веб малость пилил! Я такие штуки на перл выделывал! Могу на досуге и на питон засесть, но ничего не обещаю. Гугл тебе в помощь! |
Автор: Bulat 4.8.2016, 11:37 | ||
Щас под рукой нет ничего подходящего для присоединения к ком-порту, но чисто для примера:
Код похож на правду, но насколько он рабочий хз ![]() ![]() |
Автор: mrprim 4.8.2016, 17:11 | ||||
да, он рабочий но мне нужно использовать очередь как в первом посте. Только в первом где то ошибка |
Автор: Bulat 5.8.2016, 07:52 | ||
В первом посте у тебя слишком сложная реализация, казалось бы достаточно простой задачи! Как именно нужно использовать очереди? И что мешает прикрутить это к процедурному коду? |
Автор: mrprim 5.8.2016, 18:15 | ||
мне нужно что бы данные которые я отправляю обратно на питон с процессора, складывались в очередь к примеру 1ый элемент очереди: 123 2ой элемент очереди: 456 3ий элемент очереди: 789 при вызове на питоне serial.read() у меня читался первый элемент в очереди остальные остаются, потом еще при вызове serial.read() читался следующий и тд |
Автор: Bulat 8.8.2016, 08:15 | ||
тебе нужно поочередно из ком-порта считывать приходящие пакеты от твоего процессора? |