crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

44 страниц V  « < 28 29 30 31 32 > »   
Ответить в данную темуНачать новую тему
> QSerialDevice - Библиотека для работы с COM-портами
kuzulis
  опции профиля:
сообщение 7.12.2011, 20:55
Сообщение #291


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата
Я до конца механизм еще не понял (мало знаний, начинающий я...), но попробую как-нибудь всетаки красиво это решить.

Ok. Если у тебя получится, то сделай на гиториусе мерж-реквест и я волью твое решение в master ветку.

Цитата
Эта ветка считается более стабильной ?

Точнее сказать - более продуманной и правильной.
А от енумератора все-таки решили отказаться, т.к. все-таки не на всех платформах его можно реализовать да и дорого.

Если что - то его (енумератор) всегда можно самому сделать отдельным классом,
(для себя), если уж он так необходим.
И возложить на него урезанные функции - только определять имя появившегося устройства
и "скармливать" это имя в SerialPortInfo для получения подробной информации об устройстве.

И переименовать к примеру тогда этот класс из SerialDeviceEnumerator в SerialPortWatcher.

Сообщение отредактировал kuzulis - 7.12.2011, 21:01
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
blinvip
  опции профиля:
сообщение 11.12.2011, 16:10
Сообщение #292


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 11.12.2011
Пользователь №: 3056

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте!

Пытаюсь написать программу для передачи AT-команд модему через COM-порт, используя библиотеку qserialdevice 2.0.

Подскажите, пожалуйста какими функциями можно реализовать подобную передачу команд (наподобие Hyperterminal).
На команду, переданную через тестовое приложение guiapp модем не реагирует.

Доступна ли документация на библиотеку?

Спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 11.12.2011, 20:50
Сообщение #293


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата
Подскажите, пожалуйста какими функциями можно реализовать подобную передачу команд (наподобие Hyperterminal).

см. QIODevice::write()

Цитата
На команду, переданную через тестовое приложение guiapp модем не реагирует.

Да неужели? А не забыл ли кое кто добавить в конце команды что-то типа "\r\n" ?

Цитата
Доступна ли документация на библиотеку?

Да. Пока в виде комментариев в исходном коде.
В принципе см. методы в serialport.h , а комментарии в serialport.cpp
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_KocMak_*
сообщение 11.12.2011, 21:01
Сообщение #294





Гости








    


Привет.

Использую Prolific USB-to-Serial Comm Port и библиотеку qserialdevice для передачи пакетов на свою железку.
Проблема в том, что после создания виртуального порта, пока я любым терминалом не открою/закрою нужный COM, данные не передаются, хотя порт открывается нормально. Потом всё работает как надо, могу отправлять и принимать данные.

Подскажите, в чём может быть проблема?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 11.12.2011, 21:13
Сообщение #295


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата
Подскажите, в чём может быть проблема?

А конфигурировать порт кто будет после открытия?
Больше информации давай: какая ос, версия библиотеки, как открываешь и настраивашь порт,
код в студию.

Тут телепатов нет.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_KocMak_*
сообщение 11.12.2011, 23:05
Сообщение #296





Гости








    


Цитата(kuzulis @ 11.12.2011, 21:13) *
Цитата
Подскажите, в чём может быть проблема?

А конфигурировать порт кто будет после открытия?
Больше информации давай: какая ос, версия библиотеки, как открываешь и настраивашь порт,
код в студию.

Тут телепатов нет.


OC - Win XP и Win7, библиотека 0.4.0, код настройки порта:
void MainWindow::portInit()
{
    if(initSerial(("COM"+ui->comSelect->text()), ui->speedSelect->currentText().toInt()) == false)
    {
        QMessageBox::information(this,"Error", "Error Open COM"+ui->comSelect->text());
    }
}
bool MainWindow::initSerial(QString dev, int baudRate)
{
    serial = new AbstractSerial(this);
    serial->setDeviceName(dev);
    serial->setBaudRate(baudRate);
    serial->setDataBits(AbstractSerial::DataBits8);
    serial->setParity(AbstractSerial::ParityNone);
    serial->setStopBits(AbstractSerial::StopBits1);
    serial->setFlowControl(AbstractSerial::FlowControlOff);

    connect(this->serial, SIGNAL(readyRead()), this, SLOT(ReadData()));

    if(serial->open(AbstractSerial::ReadWrite))return true;
    else return false;
}
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 12.12.2011, 9:44
Сообщение #297


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


2 Гость_KocMak_*,

слушайте, парни, вы достали с такими вопросами уже.

Кто будет документацию читать?
Я не буду отвечать на ваш вопрос. Из принципа. Разбирайтесь сами где у вас накосячено.

ЗЫ:
Накипело.

ЗЫЗЫ:
Цитата
библиотека 0.4.0

Оно устарело. Используй ветку master или ветку 2.0.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_KocMak_*
сообщение 12.12.2011, 11:49
Сообщение #298





Гости








    


Цитата(kuzulis @ 12.12.2011, 9:44) *
Кто будет документацию читать?
Я не буду отвечать на ваш вопрос. Из принципа. Разбирайтесь сами где у вас накосячено.


Спасибо и на этом, буду разбираться.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
blinvip
  опции профиля:
сообщение 12.12.2011, 14:45
Сообщение #299


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 11.12.2011
Пользователь №: 3056

Спасибо сказали: 0 раз(а)




Репутация:   0  


Спасибо, разобрался. действительно забыл вставить \r.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
shurilnik
  опции профиля:
сообщение 13.12.2011, 19:03
Сообщение #300


Студент
*

Группа: Новичок
Сообщений: 10
Регистрация: 12.8.2011
Пользователь №: 2804

Спасибо сказали: 0 раз(а)




Репутация:   0  


kuzulis, Подскажи это нормально что при использовании qserialdevice 2.0, для работы с usb serial если открыть порт и выдернуть usb устройство, то в основном процессе почему-то перестают выполняться все ивенты таймеров... они срабатывают только при любом ручном GUI ивенте. Можно ли как-то корректно отлавливать отключение usb устройства и закрывать открытый порт ? Или мы возвращаемся к схожей нерешенной ситуации что была в прошлой версии ?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

44 страниц V  « < 28 29 30 31 32 > » 
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.11.2024, 1:48