2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
1 | |
Терминал не работает, но собирается без ошибок16.10.2019, 22:54. Показов 2573. Ответов 41
Всем привет!
Пришлось переустановить Qt. Проект работал без проблем, никаких нареканий, но открыл после переустановки и собирается без ошибок и предупреждений, интерфейс загружается, но не работает функционал. При нажатии на шаблонную команду, отправляется 1 пакет и все на этом. Дальше кнопки ничего не отправляют. Приёмная часть вообще молчит и ничего не принимает. Установлен минимальный пакет Qt Проект скинул на github Помогите разобраться, что не так стало.
0
|
16.10.2019, 22:54 | |
Ответы с готовыми решениями:
41
восстановление без ошибок, пол сайта не работает Генеологическое древо. Программа без ошибок но работает не правильно Без использования typedef все работает. При добавлении typedef — более 100 ошибок stm32f4 makefile собирается но не работает |
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 00:51 | 2 |
mcmega, какая версия Qt была до этого? В отладчике ловил проблему ?
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 06:16 [ТС] | 3 |
В том то и дело что не помнь.
В отладчике вообще пусто, никаких проблем.
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 08:59 | 4 |
- что имеется в виду?
что и через что отправляется ? Куда? что за кнопки ? в отладчике нужно шагать по программе, зная, что должно произойти, и анализируя то, что происходит на самом деле. Потом разбираться, что поломалось (проект ещё не смотрел)
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 12:11 [ТС] | 5 |
Проект не сложный, но у меня не получается, нехватает знаний.
Суть этой программы простая: - есть поля ввода и вывода - есть кнопки, на которые привязаны готовые последовательности символов При запуске программы, открывается окошко, выбирается СОМ порт с параметрами Кнопки нужны, чтоб не печатать команды, а сразу отослать пакет в USB-UART преобразователь Есть еще поле ввода, в которое можно писать произвольные символы и отправлять.
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 12:21 | 6 |
вот тут есть один момент. Когда я переходил с Qt4 на Qt5, точно была разница при работе. Сейчас глянул - вроде при вызове некоторых функций порт должен быть открыт, иначе поток крашился
тут схематически я перечислил эти функции if(m_COMPORT.isOpen())
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 12:23 [ТС] | 7 |
Так у меня вроде
void MainWindow::writeData() прописана как функция и вызывается по надобности. Или что то не так понимаю?
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 12:29 | 8 |
mcmega, ставь точку останова на
serial_1->write(output); и в отладку. Смотри, что именно отправляется, какие ошибки возникают в объекте порта
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 12:59 [ТС] | 9 |
В отладке все Ок вроде, по итогу символы нередается в переменную output.
Не понимаю что не работает...
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|||||||||||
17.10.2019, 13:04 | 10 | ||||||||||
что там вообще за колдовство с текстом. Может, в этом дело
так попробуй
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
||||||
17.10.2019, 17:21 [ТС] | 11 | |||||
В общем попробовал я эти варианты, они работают, но только 1 раз.
Меняю код на этот:
Ошибок тоже нет. Убираю код выше и пробую передать строку из поля ввода "1234" На выходе получаю 1234, но тоже только 1 раз, потом ничего не отправляется.
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 18:15 | 12 |
на выходе - понятно, а на приёмной стороне приходит?
Попробуй также вызывать flush() или waitForBytesWritten(). Проект я так и не смотрел ещё, немного занятый, да и порта никакого нет под рукой сейчас Ещё пробуй смотреть, какая ошибка была error()
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 18:25 [ТС] | 13 |
Приходит только первый вызов, дальше что не пытаюсь слать ничего не выходит.
Если отключиться от порта и заново подключиться, то снова первая команда отправляется, а следующие нет.
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
||||||
17.10.2019, 18:29 | 14 | |||||
а так?
У меня подозрение, что ты прибиваешь порт где-то снаружи этой функции. Также попробуй полный ребилд - рекомендуется делать при упорном, долгим, непонятном поведении программы
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
||||||||||||||||
17.10.2019, 18:52 [ТС] | 15 | |||||||||||||||
Попробовал поставить в конце
Осталось разобраться, почему не принимается на этой стороне, хотя команды посылаю. Упращенная функция приема (с ней сейчас работаю)
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 20:26 | 16 |
mcmega, ну, по аналогии напрашивается вызов где-нибудь в таймере waitForReadyRead
Но что за фокусы такие - я не в курсе. Я обычно с портом работаю в полностью отдельном потоке, сигналами не пользуюсь для порта
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 21:25 [ТС] | 17 |
А есть какой то набросок проекта как это делается? Может мне тоже без сигналов есть смысл делать.
Заодно проверить в чем глюк.
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
17.10.2019, 21:42 | 18 |
mcmega, waitForReadyRead попробовал уже ?
Завтра скину, только тебе проект перекраивать придётся. Лучше разберись с тем, что есть
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
17.10.2019, 21:44 [ТС] | 19 |
Пробовал, не помогает. Фигня какая то...
В СБ еще попробую на другом компе, там Qt старый, посмотрю в чем разница.
0
|
2 / 1 / 0
Регистрация: 21.12.2016
Сообщений: 35
|
|
20.10.2019, 16:38 [ТС] | 20 |
Алексей1153, Глянул я разницу, у меня 4 Qt стоит на другом компе, поэтому и все работает...
На 5 версии никак не получается запустить.
0
|
20.10.2019, 16:38 | |
20.10.2019, 16:38 | |
Помогаю со студенческими работами здесь
20
Собирается в minGW, не работает в Visual Проблемы с вводом в терминал без графической оболочки Программа через терминал запускается, а без терминала вылетает Установка Qt и QtCreator через терминал, не работает 'help' Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |