为什么供应商ID& Arduino Micro(USB Device)的产品ID在Linux和Windows中有所不同吗?

时间:2016-02-22 13:05:44

标签: c++ windows qt ubuntu arduino

我正在使用Qt for C ++开发一个与Arduino Micro通信的软件。

我使用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中,这是结果:

  

端口名称:&#34; COM4&#34;描述:&#34; Arduino Micro&#34;制造商:   &#34; Arduino LLC(www.arduino.cc)&#34; 供应商ID:9025产品ID:32823

在Ubuntu 15中:

  

港口名称:&#34; ttyACM0&#34;描述:&#34; Arduino Micro&#34;制造商:   &#34; Arduino LLC&#34; 供应商ID:5549产品编号:1908

为何选择供应商&amp; Manufacter是不同的?我认为ID是关于设备的,所以必须保持相同,独立于平台..我错了?

如果我想检查设备是否是我的设备,我该怎么办?我想与供应商和我做一个简单的检查。产品编号

更新:

我忘了告诉我在Windows10上使用Ubuntu和虚拟机与VMWare(如果它可以改变一些东西)

1 个答案:

答案 0 :(得分:3)

您的虚拟机具有虚拟串行端口,虚拟串行端口具有虚拟供应商ID。 5549是十六进制15AD,即VMWare,Inc。