วันอังคารที่ 8 กันยายน พ.ศ. 2558

serial port with custom baurate (non-standard baudrate) example

หมายเหตุ
ใน file.pro ให้เพิ่ม code ต่อไปนี้
QT += serialport

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QCoreApplication>
#include <QTextStream>
#include <QtSerialPort/QSerialPort>
#include <QMessageBox>
#include <QFile>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    //ui->setupUi(this);
    serial = new QSerialPort(this);
    QTextStream out(stdout);

    serial->setPortName("ttyS0");

    if (serial->isOpen()){
        serial->close();
        out << "serial close" << endl;
    }

    //out << serial->portName() << endl;
    if (serial->open(QIODevice::ReadWrite)) {
        serial->setBaudRate(8563);
        serial->setDataBits(QSerialPort::Data8);
        serial->setParity(QSerialPort::EvenParity);
        serial->setStopBits(QSerialPort::OneStop);
        serial->setFlowControl(QSerialPort::NoFlowControl);

        serial->write("Hello world!!!");
        serial->waitForByteWritten(100);
        //out << "Test" << endl;
    }
    else{
        //out << "Can't open comport" << endl;
        QMessageBox::critical(this, tr("Error"), serial->errorString());
    }
    //serial->close();
    //out << "serial close2" << endl;
}

MainWindow::~MainWindow()
{
    delete ui;
}

ไม่มีความคิดเห็น:

แสดงความคิดเห็น