Qt "Пример терминала" не работает должным образом с RS232 .
Я использую это как шаблон для моего последовательного приложения с графическим интерфейсом, но не могу заставить его отправлять данные на мое устройство. Используя те же настройки в PUTTY, я получаю идеальный результат. Я сузил его до проблемы, что он будет отправлять только одно сообщение и больше ничего. Там есть какая-то петля? Я уже разместил операторы отладки повсюду, чтобы проверить неизвестные действия, но безуспешно.
Я проверил, какие функции выводятся, но нигде не вижу, что он закрывает порт.
Я также подумал, что, может быть, я просто не отправил команду \r, но даже это ничего не дало. Я просто отправляю первое сообщение, а затем ничего не происходит.
Я попытался отправить его вручную с помощью таких команд:
m_serial->write("command");
m_serial->write("command\r");
Я также пробовал использовать решение здесь: Как сделать QSerialPort из Qt5.13.1 работает?
Я попытался обновиться до новейшей версии, но инструмент обслуживания не нашел репозиторий, поэтому я просто сделал чистую установку с 5.12.5, и та же проблема не устранена.
На моем изображении первый набор открытий-закрытий является примером терминала. Второй комплект - шпаклевка рабочая. Я определенно подключаюсь, потому что проверка ошибок и информация о последовательном порте, которую я получаю от Qt, верны.
ИЗМЕНИТЬ
Мои настройки порта:
- Бод: 9600
- Биты данных: 8
- Стоповые биты: 1
- Паритет: Нет
- Управление потоком: нет
Версия Qt: 5.13.1, 5.12.5