12345678910111213141516171819202122232425262728293031323334353637383940414243 |
-
- #include "PortListener.h"
- #include <QtDebug>
-
- PortListener::PortListener(const QString & portName)
- {
- qDebug() << "hi there";
- this->port = new QextSerialPort(portName, QextSerialPort::EventDriven);
- port->setBaudRate(BAUD9600);
- port->setFlowControl(FLOW_OFF);
- port->setParity(PAR_NONE);
- port->setDataBits(DATA_8);
- port->setStopBits(STOP_2);
-
- if (port->open(QIODevice::ReadWrite) == true) {
- connect(port, SIGNAL(readyRead()), this, SLOT(onReadyRead()));
- connect(port, SIGNAL(dsrChanged(bool)), this, SLOT(onDsrChanged(bool)));
- if (!(port->lineStatus() & LS_DSR))
- qDebug() << "warning: device is not turned on";
- qDebug() << "listening for data on" << port->portName();
- }
- else {
- qDebug() << "device failed to open:" << port->errorString();
- }
- }
-
- void PortListener::onReadyRead()
- {
- QByteArray bytes;
- int a = port->bytesAvailable();
- bytes.resize(a);
- port->read(bytes.data(), bytes.size());
- qDebug() << "bytes read:" << bytes.size();
- qDebug() << "bytes:" << bytes;
- }
-
- void PortListener::onDsrChanged(bool status)
- {
- if (status)
- qDebug() << "device was turned on";
- else
- qDebug() << "device was turned off";
- }
|