内置USB Serial Number的USB芯片在终端客户使用时十分便利,在生产环节批量测试时会遇到以下问题。
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、双击运行该注册表文件将其导入至系统
同一种芯片插入电脑后USB转串口号不断增加的解决办法
关键词: USB转串口 USB CDC
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 | |
【FRDM-MCXN947评测】核间通信MUTEX被打赏50分 |