我有一个Qt应用程序,我试图在Linux上构建。我有一个FTDI设备,我想使用我所做的Qt应用程序进行交互,但是我不断收到设备无法打开的错误消息。我已检查设备是否已连接到PC并且已连接,因为我可以从设备检索序列号,设备描述等。我也在Windows上试过这个,它没有问题,只有Linux。
顺便说一句,这是我的代码:
foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts())
{
if(info.description() != "")
{
QSerialPort *serial = new QSerialPort(info);
serial -> setPortName(info.portName());
if (!serial->open(QIODevice::ReadWrite)) {
std::cout << "Fail to open device" << std::endl;
}
serial -> setDataBits(QSerialPort::Data8);
serial -> setStopBits(QSerialPort::OneStop);
serial -> setParity(QSerialPort::NoParity);
}
}
答案 0 :(得分:1)
将自己添加到拨出组:
sudo usermod -a -G dialout YOURUSERNAME
或
sudo adduser YOURUSERNAME dialout
然后注销并再次登录以生效。