之前用Qt写一个用于Arduino开发板HEX文件烧写的工具,遇到了这个问题。后来找到了一个跨平台的串口操作库:qextserialport 以下代码可用于获取Windows平台上活动的串口列表。 QStringList & ComPortMgr::getAvailableComPorts() { static QStringList availablePorts; const int MAX_COM_PORT = 256; QString testPortName; QextSerialPort testPort; testPort.setBaudRate(BAUD9600); testPort.setFlowControl(FLOW_OFF); testPort.setParity(PAR_NONE); testPort.setDataBits(DATA_8); testPort.setStopBits(STOP_1); for (int i = 1; i < MAX_COM_PORT; i++) { testPortName = QString("COM%1").arg(i); testPort.setPortName(testPortName); if (testPort.open(QIODevice::ReadWrite)) { availablePorts.append(testPortName); testPort.close(); } } return availablePorts;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。