Russian Qt Forum

Qt => Вопросы новичков => Тема начата: demaker от Март 01, 2017, 14:12



Название: QSerialPort запись в порт
Отправлено: demaker от Март 01, 2017, 14:12
Пытаюсь в порт отправить сообщение при нажатии на кнопку.
Сообщение проходит только один раз.
После повторного нажатия сообщение в терминале не отображается.

Хотя QDebug выводит 5 на экран - типа записалось. ??? ??? ???
Скажите что делаю не правильно.
Код
C++ (Qt)
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
 
   connect(ui->pushButton,SIGNAL(clicked()),this,SLOT(clicked()));
 
   serialPort = new QSerialPort(this);
   serialPort->setPortName("COM4");
   qDebug()<<"---------------------------------------------";
   qDebug()<<serialPort->open(QIODevice::ReadWrite);
   qDebug()<<"---------------------------------------------";
   qDebug()<<serialPort->setBaudRate(QSerialPort::Baud38400);
   qDebug()<<serialPort->setDataBits(QSerialPort::Data8);
   qDebug()<<serialPort->setParity(QSerialPort::NoParity);
   qDebug()<<serialPort->setStopBits(QSerialPort::OneStop);
   qDebug()<<serialPort->setFlowControl(QSerialPort::NoFlowControl);
}
 
MainWindow::~MainWindow()
{
   delete ui;
}
 
void MainWindow::clicked()
{
   if(serialPort->isOpen()){
       QByteArray ba("hello");
       qDebug()<<serialPort->write(ba.data(),ba.size());
   }
}
 


Название: Re: QSerialPort запись в порт
Отправлено: demaker от Март 02, 2017, 16:13
Добавил после write waitForBytesWritten и все заработало.


Название: Re: QSerialPort запись в порт
Отправлено: kuzulis от Март 02, 2017, 16:34
Скорее всего кривой ком-порт, вангую - какой-то самопальный девайс.


Название: Re: QSerialPort запись в порт
Отправлено: demaker от Март 07, 2017, 19:56
Скорее всего кривой ком-порт, вангую - какой-то самопальный девайс.
Т.е  вы хотите сказать что переходник usb-2com работает криво  ???


Название: Re: QSerialPort запись в порт
Отправлено: kuzulis от Март 07, 2017, 22:50
Но уж явно не QSerialPort.


Название: Re: QSerialPort запись в порт
Отправлено: dimka8 от Март 20, 2017, 20:49
переходники usb-com на вин7 работают отвратительно не только с Qt