我想配置一个使用Qt的串行锅通信,这是我在Qt的第一个应用程序,并根据多线程我写这段代码5.1串行通信:Qt的使用QSerialPort
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QSerialPort>
QSerialPort serial;
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
serial.open(QSerialPort::ReadWrite);
serial.setPortName("ttyACM0");
serial.setBaudRate(QSerialPort::Baud9600);
serial.setDataBits(QSerialPort::Data8);
serial.setParity(QSerialPort::NoParity);
serial.setStopBits(QSerialPort::OneStop);
serial.setFlowControl(QSerialPort::NoFlowControl);
serial.write("hello");
}
MainWindow::~MainWindow()
{
delete ui;
serial.close();
}
与编译器告诉我,当我建立项目时,设备未打开。
什么是确切的错误信息,你什么时候看到它?截图可能会有所帮助,因为我非常怀疑_compiler_知道关于设备的任何内容以及它们是否处于打开状态。 – 2015-01-27 00:58:45
用'QSerialPortInfo :: availablePorts()'检查可用的串行端口。你也可能需要sudo权限才能访问串口设备。 – Nejat 2015-01-27 05:47:43