QSerialDevice - Библиотека для работы с COM-портами |
Здравствуйте, гость ( Вход | Регистрация )
QSerialDevice - Библиотека для работы с COM-портами |
kuzulis |
12.3.2013, 17:31
Сообщение
#421
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
startAsyncRead 1) первое условие не выполнилось, на чтение буфера 2) второе тоже (то есть указатель забрало нормально) 3) файл не прочло 4) QSerialPort::PermissionError 5) Поменяло на ReadError 6) вернуло false Как временная заглушка, на винде и на ReadError проверяю. Но это как то не очень, вроде бы. Странно. Нашел на работе девайс с FTDI чипом, установил драйвера v 2.08.28 с сайта: http://www.ftdichip.com/Drivers/VCP.htm И все работает, при выдергивании triggeredEventMask = 0! ОС: Win8x32 Сообщение отредактировал kuzulis - 12.3.2013, 17:41 |
|
|
RazrFalcon |
12.3.2013, 17:42
Сообщение
#422
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
XP...
На семерке не проверял. |
|
|
kuzulis |
12.3.2013, 17:44
Сообщение
#423
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
|
|
|
kuzulis |
24.3.2013, 12:23
Сообщение
#424
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
RazrFalcon,
Кстати да, все-же имеется баг с излучением сигнала ResourceError в Windows. Предыдущее решение рабоатет частично. Он (баг) должен воспроизводится, если из открытого ранее у-ва мы что-то прочитали, а потом через некоторое время выдернули шнурок. Но если мы просто открыли девайс и выдернули - то вроде бага нет. Можешь у себя проверить? UPD: И еще, зря ты на свой QTPLAYGROUND-21 баг та честно утвердительно ответил. Потому что просто возвращать uint16 немного некорректно, т.к. некоторые девайсы (которые НЕ USB, и НЕ PCI) не имеют вообще никакого VID/PID. Поэтому возвращать 0 в таких случаях некорректно, потому что нулевые VID/PID реально могут существовать для USB и в некоторых случаях это не ошибка! тов. Laszlo игнорирует все доводы и стоит на своем. Но я не приму его патч, т.к. он не отражает реальную обстановку дел. Даже хочет лишить меня (создателя библиотеки) права голоса, говорит, что я приношу только вред проекту. И обсирает всех в некомпетентности. Вот такие вот дела. Сообщение отредактировал kuzulis - 24.3.2013, 12:25 |
|
|
kuzulis |
28.3.2013, 12:45
Сообщение
#425
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
RazrFalcon,
Ты у нас единственный человек у которого есть возможность доступа к MacOSX. Не мог бы ты проверить патч для бага с отображением описания для Bluetooth у-ва? https://bugreports.qt-project.org/browse/QTPLAYGROUND-25 Вот примерный мануал как проверять: http://www.prog.org.ru/index.php?topic=953...73695#msg173695 ЗЫ: Или кто-нибудь, проверьте плиз. |
|
|
Алексей1153 |
25.4.2014, 21:59
Сообщение
#426
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
вот понадобился данный класс, стал разбираться.
квест прошёл, но мозг взорвал )) вот здесь http://qt-project.org/wiki/QtSerialPort_Russian для Qt4 вместо
должно быть
------------------- тут выше упоминается, что Хто хочет - сделает сам если что. вот поэтому я и не использую твою библиотеку, также как и QxtSerialPortа какие ещё классы есть ? |
|
|
Алексей1153 |
28.4.2014, 14:02
Сообщение
#427
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
сел читать из реального порта - и не читаются данные. Порт открывается, а сигнал readyRead() не вызывается, да и принудительный вызов readAll() возвращает 0. Хотя данные в порт с прибора точно идут - я темриналом проверял
это что может быть такое ?
верси Qt 4.8.2 - может, в этом проблема ? Сообщение отредактировал Алексей1153 - 28.4.2014, 14:21 |
|
|
Алексей1153 |
28.4.2014, 14:39
Сообщение
#428
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
какие там другие классы для работы с ком-портом упоминались ? Желательно без наворотов - мне всё равно нужно будет простая вычитка в отдельном потоке
|
|
|
Алексей1153 |
28.4.2014, 21:35
Сообщение
#429
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
перешёл на Qt 5 , там QSerialPort уже встроен, прописываем
QT += serialport |
|
|
kuzulis |
29.4.2014, 17:40
Сообщение
#430
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
1)
Цитата должно быть LIBS += -lqtserialport не не не .. ни в коем случае. для Qt4 надо: Цитата CONFIG += serialport скорее всего ты просто не установил QtSerialPort в свою Qt4. В Wiki исчерпывающая инфа. 2) Цитата сел читать из реального порта - и не читаются данные. Порт открывается, а сигнал readyRead() не вызывается, да и принудительный вызов readAll() возвращает 0. Хотя данные в порт с прибора точно идут - я темриналом проверял это что может быть такое ? Это не напрягает?
Может так правильнее тогда:
если вздумал использовать "\\.\" ?? Но это можно опустить, достаточно писать просто COM5, там внутри оно само подставит что надо и куда надо. ПЫСЫ: Может сначала нужно почитать документацию и посмотреть примеры? Или мы "нахрапом" берем? Сообщение отредактировал kuzulis - 29.4.2014, 17:44 |
|
|
Текстовая версия | Сейчас: 24.11.2024, 4:48 |