Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Alrus от Август 18, 2016, 10:33



Название: Скорость передачи через USB-RS485 2-wire в Windows и Linux
Отправлено: Alrus от Август 18, 2016, 10:33
Здравствуйте!
Есть проблема с COM портом в Linux Mint.
Один и тот же код, скомпилированный в Windows и Linux, работает с разной скоростью передачи через COM порт.
Так, в Windows время между запросом и ответом составляет, к примеру, 50мс, а в Linux при прочих равных условиях время между запросом и ответом более 100мс.
По мимо этой задержки в Linux наблюдается отсечка пакета, т.е. пакет передаётся неполностью.
Для связи с внешним устройством используется переходник USB-RS485 2-wire (FTDI232 chip).
В чём может быть проблема?
Спасибо!


Название: Re: Скорость передачи через USB-RS485 2-wire в Windows и Linux
Отправлено: kuzulis от Август 18, 2016, 20:07
* Версия Qt
* Код в студию

Цитировать
т.е. пакет передаётся неполностью.

не может быть

Цитировать
В чём может быть проблема?

в гравитационном возмущении сатурна


Название: Re: Скорость передачи через USB-RS485 2-wire в Windows и Linux
Отправлено: Bepec от Август 18, 2016, 22:12
У некоторых версий конверторов на FTDI232 мне встречалась проблема отсечки. Это по большей части были пассивные преобразователи, у которых, по мнению команды, был малый буфер для приема/передачи и при интенсивной работе он просто забивался.

Мы просто отказались от данных моделей и перешли на MOXA.

PS без кода ничем помочь не можем.


Название: Re: Скорость передачи через USB-RS485 2-wire в Windows и Linux
Отправлено: lit-uriy от Август 19, 2016, 09:49
>т.е. пакет передаётся неполностью.
1) надо смотреть настройки драйвера, в винде можно в свойствах устройства выставить нужный размер буфера. Где и как это делается в Линухе не знаю, какой-нибудь конфиг нужно править.
2) Проверь свежесть дров
3) не исключено что микросхема старой модели, в новых версиях драйвером могли придумать какую-нибудь затычку.