1

我正在 Qt 上设计一个实时应用程序。卡在 QExtserialport 设计有硬件部分,通过 UART 通信感知和发送信号。我设计应用程序来显示 GUI 界面。以下代码未在 Qt 中打开端口。但它确实在 Minicom 上,cutecom 显示价值。

头文件.h

INCLUDEPATH += .
include(..project/qextserialport-1.2rc/src/qextserialport.pri)

CONFIG += extserialport

主窗口.cpp

Qextserialport *rs232_;

主窗口.cpp

rs232_ = new QextSerialPort("/dev/ttyS0");
rs232_->open( QIODevice::ReadWrite );
if (!rs232_->isOpen()) {
    qDebug()<<"....Port ttyS0 CanNot Open...."<<endl
}
rs232_->setBaudRate(BAUD4800);
rs232_->setFlowControl(FLOW_OFF);
rs232_->setParity(PAR_ODD);
rs232_->setDataBits(DATA_8);
rs232_->setStopBits(STOP_1);

QTimer *s2_timer = new QTimer(this);
s2_timer->setInterval(17);
s2_timer->start();

connect(rs232_, SIGNAL(readyRead()), this, SLOT(onDataAvailable()));

它总是显示“端口 ttyS0 无法打开”

4

1 回答 1

0

将 Qt 更新到 5.6,由 QtSerialPort 解决。 http://doc.qt.io/qt-5/qtserialport-index.html

于 2016-04-22T05:51:16.940 回答