QtSerialport. Проблема с приемом данных. |
Здравствуйте, гость ( Вход | Регистрация )
QtSerialport. Проблема с приемом данных. |
Voronar |
31.3.2013, 16:12
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 13.2.2013 Пользователь №: 3709 Спасибо сказали: 0 раз(а) Репутация: 0 |
Здравствуйте. Взял в помощь эту библиотеку, чтобы общаться с Arduino.
Моя проблема заключается в следующем: Написал прогу по приему данных с Arduino, но прием и отображение данных происходит не сразу. Сначала приходится через Arduino IDE помониторить порт(послать какой-то сигнал готовности), а после этого уже приходят желанные данные по сигналу readyRead() в соответствующий слот моей программы. Я так понимаю, что в моей программе не хватает какого-то метода, который говорит порту: "Я готов принимать от тебя данные, давай!". Не подскажите как называется этот метод? Спасибо за внимание. |
|
|
kuzulis |
1.4.2013, 8:42
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
См. ответ на prog.org.ru
|
|
|
ALeXUI |
1.4.2013, 11:03
Сообщение
#3
|
Студент Группа: Участник Сообщений: 19 Регистрация: 30.4.2011 Пользователь №: 2647 Спасибо сказали: 2 раз(а) Репутация: 0 |
kuzulis, Здравствуйте, я давно задавал вопрос, на другом форуме, к сожалению времени вернуться к нему не было а сейчас появилось, чтобы не плодить темы, спрошу здесь:
Имеется следующая проблема, при первом включении программы, программа сразу же зависает, при открывании ком порта. Если запустить HyperTerminal и считать данные с ком, и снова запустить программу, все прекрасно работает. В режиме дебага, данные корректо идут и считываются, даже первый раз. Скорее всего зависание происходит на строчке где вызывается метод readall, он вызывается соответсвенно по сигналу readyread(). Уже месяц не могу понять в чем проблема? Может кто-то сталкивался с чем-то похожим? Я обновился до последней версии, теперь программа не зависает. Но и данные сразу тоже не идут. Сначало все равно приходится открывать hyperterminal. Класс отвечающей за соединение и первоначальный прием.
в главном классе виджета коннект
Здесь выводится Eror "Unknown error" 5 Eror "Unknown error" 5 Eror "Unknown error" 6 Eror "Unknown error" 6 Eror "Unknown error" 5 Eror "Unknown error" 5 |
|
|
ALeXUI |
1.4.2013, 13:29
Сообщение
#4
|
Студент Группа: Участник Сообщений: 19 Регистрация: 30.4.2011 Пользователь №: 2647 Спасибо сказали: 2 раз(а) Репутация: 0 |
Спасибо уже помогли! Если у кого-то возникнут похожие проблемы, нужно сначало открывать ком-порт, а потом задавть его настройки!
|
|
|
kuzulis |
1.4.2013, 15:14
Сообщение
#5
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
Это само собой разумеется!
В следующий раз просто надо читать документацию, смотреть примеры, и "включить мозг" в конце концов! |
|
|
Voronar |
1.4.2013, 18:50
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 13.2.2013 Пользователь №: 3709 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо ALeXUI.
kuzulis, если бы он не был включен, я бы сюда не добрался с этим вопросом. Вполне себе нормальный вопрос начинающего. |
|
|
ALeXUI |
2.4.2013, 0:43
Сообщение
#7
|
Студент Группа: Участник Сообщений: 19 Регистрация: 30.4.2011 Пользователь №: 2647 Спасибо сказали: 2 раз(а) Репутация: 0 |
kuzulis,
Цитата В следующий раз просто надо читать документацию Я бы с таким удовольствием её почитал, да где взять? http://qt-project.org/wiki/QtSerialPort_Russian здесь про документацию все зачеркнуто.... Цитата "включить мозг" в конце концов! Так по логике сначала необходимо настроить соединение, а потом открывать его, из-за этого вся и путаница. И ещё такой вопрос, сегодня столкнулся со следующей проблемой, первый раз пришлось работать с переходником usb com, как раз после того как обновился=) После пересброса питания на плате, (но не всегда), такое ощущение, что не идет сигнал readyread(), и происходит это не всегда... Хотя при работе на компьютере с нормальным ком портом, такого замечено не было, поэтому не думаюь что косяк в программе. |
|
|
Litkevich Yuriy |
2.4.2013, 5:37
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
kuzulis |
2.4.2013, 10:11
Сообщение
#9
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
Цитата(ALeXUI) Я бы с таким удовольствием её почитал, да где взять? http://qt-project.org/wiki/QtSerialPort_Russian здесь про документацию все зачеркнуто.... Скоро должна быть в открытом доступе на qt-project.org после того как ее допилят до того состояния чтобы не стыдно было А пока что можно сгенерить самому, вот линк: http://www.prog.org.ru/index.php?topic=953...73488#msg173488 Цитата(ALeXUI) Так по логике сначала необходимо настроить соединение, а потом открывать его, из-за этого вся и путаница. Крайне неверное утверждение. 1. Ты не можешь что-то сконфигурировать не открыв это, т.е. не получив дескриптор у-ва. Это - раз. 2. Ты можешь переконфигурировать у-во в процессе его работы не закрывая его. Это - два. Цитата(ALeXUI) И ещё такой вопрос, сегодня столкнулся со следующей проблемой, первый раз пришлось работать с переходником usb com, как раз после того как обновился=) После пересброса питания на плате, (но не всегда), такое ощущение, что не идет сигнал readyread(), и происходит это не всегда... Хотя при работе на компьютере с нормальным ком портом, такого замечено не было, поэтому не думаюь что косяк в программе. Ну, я не телепат. Дай полный HowTo как воспроизвести проблему и т.п. Запости баг в багзиллу в конце концов с детальным описанием проблемы. Вот тогда и есть смысл это обсуждать... Так по логике сначала необходимо настроить соединение, а потом открывать его, из-за этого вся и путаница. И из-за текущей последовательности все наступали и будут наступать на грабли.Ну, это единственно верная последовательность. |
|
|
Litkevich Yuriy |
4.4.2013, 22:35
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Текстовая версия | Сейчас: 22.11.2024, 8:24 |