在带有 Qt 5.3 的 Ubuntu 14.04 上使用此处的示例
foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) {
qDebug() << "Name : " << info.portName();
qDebug() << "Description : " << info.description();
qDebug() << "Manufacturer: " << info.manufacturer();
// Example use QSerialPort
QSerialPort serial;
serial.setPort(info);
if (serial.open(QIODevice::ReadWrite)){
serial.errorString();
serial.close();
}
}
输出:
Name "ttyACM2"
Description "E5-00"
Manufacturer "Nokia"
"No such File or Directory"
从代码看来,QSerialPortInfo 已正确检测到端口,但即使 serial.open() 返回 true,errorString() 也会返回“没有这样的文件或目录”。迫切需要一个解决方案。