我正在开发一个与Arduino Micro通信的软件,使用Qt for C ++。
我使用QSerialPortInfo以这种方法显示我的Arduino Micro的一些信息:
for (QSerialPortInfo info : QSerialPortInfo::availablePorts()) { qDebug() << "Port Name :" << info.portName(); qDebug() << "Description :" << info.description(); qDebug() << "Manufacturer:" << info.manufacturer(); qDebug() << "Vendor ID :" << info.vendorIdentifier(); qDebug() << "Product ID :" << info.productIdentifier(); }
在Windows 10中,这是结果:
端口名称:“COM4”说明:“Arduino Micro”制造商:“Arduino LLC(www.arduino.cc)” 供应商编号:9025产品编号:32823
而在Ubuntu 15中:
端口名称:“ttyACM0”说明:“Arduino Micro”制造商:“Arduino LLC” 供应商编号:5549产品编号:1908
为什么供应商和制造商是不同的? 我认为身份证是关于设备,所以必须仍然是相同的,平台独立..我错了?
如果我想检查一个设备是否是我的设备,我该怎么做? 我想用一个供应商和产品ID做一个简单的检查
更新:
我忘了告诉我,在Windows10上使用Ubuntu的虚拟机与VMWare(如果它可以改变一些东西)
您的虚拟机具有虚拟串行端口,虚拟串行端口具有虚拟供应商ID。 5549是十六进制的15AD,这是VMWare公司。