1
0
This repository has been archived on 2023-11-30. You can view files and clone it, but cannot push or open issues or pull requests.
dtux__zigbeemanager/serial.inc.cpp

66 lines
1.6 KiB
C++
Raw Normal View History

2023-04-08 15:06:36 +02:00
#include "serial.inc.h"
extern QApplication a;
using namespace std;
ZigbeeMgr::ZigbeeMgr()
{
//QMessageBox::StandardButton reply;
bool test;
this->setBaudRate(115200);
this->setDataBits(QSerialPort::Data8);
this->setStopBits(QSerialPort::OneStop);
this->setParity(QSerialPort::NoParity);
this->setPortName(this->serialDevicePath);
do
{
test = this->open(QIODevice::ReadWrite);
if (!test)
{
cout << this->errorString().toStdString() << "=>" << this->serialDevicePath.toStdString() << endl;
/*QString str = "Device can not be openened : " + errorString() + "=>" + this->device;
reply = QMessageBox::question(
nullptr,
a.applicationName(),
str,
QMessageBox::Retry|QMessageBox::Abort,
QMessageBox::Retry
);
if (reply == QMessageBox::Abort)
{
exit(1);
}*/
sleep(5);
}
}while(!test);
}
ZigbeeMgr::~ZigbeeMgr()
{
this->close();
}
void ZigbeeMgr::getData()
{
dataRead = this->readAll();
cout << dataRead.toHex().toStdString() << endl;
}
void ZigbeeMgr::confirmWrite(qint16 byte)
{
QString str;
if (byte != dataWriteSize)
{
str = "Bytes written not egal to bytes sent : " + QString::number(byte) + " written for " + dataWriteSize + " sent";
cout << str.toStdString() << endl;
}
}
void ZigbeeMgr::write(QString datas)
{
dataWriteSize = datas.count();
this->writeData(datas.toStdString().c_str(), datas.count());
}