打印
[USB芯片]

Windows系统禁用串口序列号功能

[复制链接]
446|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
袁胜富|  楼主 | 2024-9-3 10:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 袁胜富 于 2024-9-3 10:52 编辑


此部分内容已被设置为付费内容,您可以在支付 1 元 人民币后浏览本楼层全部付费内容点击购买
1、USB设备首次插入Windows系统主机时,系统会根据芯片的USB Serial Number为其分配串口号,这个过程会持续几秒钟甚至数十秒,然后Windows会记录下设备的VID/PID/Serial Number,等设备再次接入后,Windows系统会先查找之前记录的设备列表,如果有匹配的设备,则不需要重新分配新的串口(安装驱动)。

2、以CH342/CH343芯片为例,芯片出厂时均内置USB Serial Number,各芯片均是唯一的,导致每次接入新设备,都会重新安装驱动,分配新的COM号。

3、COM口序号会随着设备的增加而不停增加,生产用的电脑到一定数量则无法生成新串口。

4、COM口序号不停改变,需要通过串口测试产品功能时要不停更换串口。

为避免上述问题,尤其是生产用机器,可以使用下述方法进行规避从而提高效率。方法为:强制忽略USB Serial Number。

原理为,对HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags的注册表项IgnoreHWSerNum进行配置,组成形式IgnoreHWSerNumVVVVPPPP,其中VVVV为设备VID,PPPP为设备PID。

将IgnoreHWSerNum与待设置USB设备VID、PID组合之后,配置值为01,则强制 USB 驱动程序堆栈忽略设备的序列号。配置值为00,则代表启用设备的序列号功能。

示例:(产品VID为1A86,PID为55D4)

1、创建txt文件,写入如下内容

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags]

"IgnoreHWSerNum1A8655D4"=hex:01

2、保存,并将txt文件后缀名修改为IgnoreHwSerNum_CH343.reg

3、双击运行该注册表文件将其导入至系统

串口一键恢复工具.zip

28.96 KB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

137

帖子

2

粉丝