int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); QStringList argumentList = QCoreApplication::arguments(); QSerialPort serialPort; QString serialPortName = "/dev/ttyUSB0"; // default int boudRate = QSerialPort::Baud115200; if (argumentList.size() == 2 ) { serialPortName = argumentList.at(0); boudRate = argumentList.at(1).toInt(); } serialPort.setPortName(serialPortName); serialPort.open(QIODevice::ReadWrite); serialPort.setBaudRate(boudRate); serialPort.setDataBits(QSerialPort::Data8); serialPort.setParity(QSerialPort::NoParity); serialPort.setStopBits(QSerialPort::OneStop); serialPort.setFlowControl(QSerialPort::NoFlowControl); SerialPortReader serialPortReader(&serialPort, 8080); serialPortReader.showSerialInfo(); return a.exec(); }
QT_USE_NAMESPACE int main(int argc, char *argv[]) { QCoreApplication coreApplication(argc, argv); int argumentCount = QCoreApplication::arguments().size(); QStringList argumentList = QCoreApplication::arguments(); QTextStream standardOutput(stdout); if (argumentCount == 1) { standardOutput << QObject::tr("Usage: %1 <serialportname> [baudrate]").arg(argumentList.first()) << endl; return 1; } QSerialPort serialPort; QString serialPortName = argumentList.at(1); serialPort.setPortName(serialPortName); int serialPortBaudRate = (argumentCount > 2) ? argumentList.at(2).toInt() : QSerialPort::Baud9600; serialPort.setBaudRate(serialPortBaudRate); if (!serialPort.open(QIODevice::ReadOnly)) { standardOutput << QObject::tr("Failed to open port %1, error: %2").arg(serialPortName).arg(serialPort.errorString()) << endl; return 1; } SerialPortReader serialPortReader(&serialPort); return coreApplication.exec(); }