serial->setPortName(ui->PortBox->currentText()); //设置串口号 } else { ui->PortBox->clear(); //关闭串口号 ui->PortBox->addItem("刷新"); //添加刷新 foreach(const QSerialPortInfo &info,QSerialPortInfo::availablePorts()) //添加新串口 { portNameList.append(info.portName()); } ui...
serial.setPort(info); if(serial.open(QIODevice::ReadWrite)) { ui->PortBox->addItem(serial.portName()); serial.close(); } } 2、打开串口 serial->open(QIODevice::ReadWrite); 3、设置波特率(如115200) serial->setBaudRate(QSerialPort::Baud115200);//设置波特率为115200 4、设置数据位(如8)...
1、设置串口名(如COM1): serial = new QSerialPort; serial->setPortName(ui->PortBox->currentText()); 1. 2. 同时可以使用自动寻找可用串口的方法,直接自动设置了 foreach (const QSerialPortInfo &info,QSerialPortInfo::availablePorts()) { QSerialPort serial; serial.setPort(info); if(serial.ope...
如图,执行到setportname就卡死,检查过指针不为空,port也肯定存在。最诡异的是,不使用QT creator调试而使用VS而的话,不会卡死;或者如果我不是用成员变量指针,而是使用局部变量指针实例化QSerialPort 也不会卡死;qt版本 5.15.2,creator版本4.14.1有大神知道怎么回事嘛thokrz 2021-03-01 15:24:19 从qt5.1开始...
serialDevice << info.portName(); }/* 添加到串口设备显示框 */ui->SerialNum_Box->addItems(SerialPort_Name); 2.2、下拉列表自适应 此时已经将串口设备信息添加到下拉框中了,但是下拉框此时是固定长度,如果串口设备信息比较长则无法显示完全(以省略号展示),那么就需要实现下拉框根据设备信息字符串长度适配功能...
serialDevice << info.portName(); } /* 添加到串口设备显示框 */ ui->SerialNum_Box->addItems(SerialPort_Name); 1. 2. 3. 4. 5. 6. 7. 8. 9. 2.2、下拉列表自适应 此时已经将串口设备信息添加到下拉框中了,但是下拉框此时是固定长度,如果串口设备信息比较长则无法显示完全(以省略号展示),那么...
serialPortComboBox->addItem(info.portName()); } QSerialPortInfo::availablePorts() 函数的功能时会检测当前电脑上串行端口,并且返回系统上串行端口的信息。 之后将获取到的信息加入Qcombobox下拉选项框中。本例中只添加了串口的名字即COM4。 2.设置串口参数并开启串口 ...
serial->setPort(info); // 在对象中设置串口 if(serial->open(QIODevice::ReadWrite)) // 以读写方式打开串口 { ui->PortBox->addItem(info.portName()); // 添加计算机中的端口 serial->close(); // 关闭 } else { qDebug() << "串口打开失败,请重试";} } // 参数配置 // 波...
QT += serialport QSerialPort 可以使用qserialPortInfo帮助程序类获取有关可用串行端口的信息,该类允许枚举系统中的所有串行端口。这对于获得要使用的串行端口的正确名称很有用。可以将helper类的对象作为参数传递给setport()或setportname()方法,以分配所需的串行设备。
m_serialPort->close(); } m_serialPort->setPortName(ui->comboBox->currentText());//当前选择的串口名字 if(!m_serialPort->open(QIODevice::ReadWrite))//用ReadWrite的模式尝试打开串口 { qDebug()<<"打开失败!"; return; } qDebug()<<"串口打开成功!"; ...