Название: Самопроизвольное отключение сигнала readyRead() класса QSerialPort Отправлено: YvenTitan от Февраль 20, 2020, 13:26 Здравствуйте
У меня есть программа, которая пересылается файл в устройство, используя COM-порт. Под ОС Windows работает нормально, при переносе на OC Raspbian Buster возникает проблема при записи файла в устройство. При чтении из устройства работает нормально (если не используется функция QSerialPort::write). Точнее сначала работает нормально, а в какой-то момент перестает отслеживать сигнал readyRead класса QSerialPort. Выводится ошибка QSerialPort::UnknownError. COM-порт - виртуальный USB. Выключение и включение COM-порта и перезапуск программы ситуацию не исправляют. COM приходит в нормальное состояние только или перезагрузкой устройства, или перезагрузкой raspberry. Команда cat /proc/meminfo показывает, что заполнения памяти нет. Использую Raspberry Pi 3. flush() после write() и clear() перед write ситуацию не меняют. В отличие от Windows в Rasbian много неправильных пакетов (мусора). Передача перестает работать каждый раз через разное число посланных пакетов и через разное количество мусорных. Можете подсказать в чем может быть проблема? Из-за чего в какой-то момент перестает работать сигнал ReadyRead() ? Название: Re: Самопроизвольное отключение сигнала readyRead() класса QSerialPort Отправлено: kuzulis от Февраль 20, 2020, 17:19 Возможно проблема в Linux Kernel: https://bugreports.qt.io/browse/QTBUG-48304
Попробовать пересобрать BSP с другой версией ядра. Да и непонятно, какая версия QSP используется. В любом случае можно всегда пересобрать QSP и втыкнуть трейс в то место где генерится ошибка QSerialPort::UnknownError и вывести реальный errno. Название: Re: Самопроизвольное отключение сигнала readyRead() класса QSerialPort Отправлено: qate от Февраль 21, 2020, 09:21 на обычной ubuntu работает ок ?
если да, то очевидно где проблема |