当我将 PL2303 USB 连接到我的 ubuntu 系统的串行转换器后运行以下命令时:
dmesg | grep ttyUSB
我得到:
usb 1-2: pl2303 converter now attached to ttyUSB0
然后我运行:
udevadm info -a -n /dev/ttyUSB0
我得到:
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-2':
KERNELS=="1-2"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{bMaxPower}=="100mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bcdDevice}=="0400"
ATTRS{bmAttributes}=="80"
ATTRS{busnum}=="1"
ATTRS{configuration}==""
ATTRS{devnum}=="27"
ATTRS{devpath}=="2"
ATTRS{idProduct}=="2303"
ATTRS{idVendor}=="067b"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Prolific Technology Inc. "
ATTRS{maxchild}=="0"
ATTRS{product}=="USB-Serial Controller D"
ATTRS{quirks}=="0x0"
ATTRS{removable}=="removable"
ATTRS{speed}=="12"
ATTRS{urbnum}=="20"
ATTRS{version}==" 1.10"
但是没有
ATTRS{serial} 找到上述 PL2303 USB 到串行转换器。 谁能告诉我为什么?我获取所有其他 USB 设备的串行属性
PL2303 串行转换器芯片的数据表在第 11 页包含芯片的 EEPROM 配置数据说明。
EEPROM 可以指定芯片的 USB 产品和供应商 ID,因此在其产品中使用此芯片的用户可以使用特定于其产品的 ID,而不是使用通用的 USB 到串行转换器 ID,从而允许无缝自动检测和使用特定于产品的驱动程序(如果需要)。人们会期望序列号也可能存储在该EEPROM中。但是在EEPROM数据布局中没有序列号的位置。
事实上,整个数据表根本没有记录从该串行转换器检索唯一序列号的任何方法。所以我必须得出结论,这个串行转换器芯片系列根本没有唯一的序列号,至少在其早期的芯片修订版中没有(数据表是从 2005 年开始的)。