如何让USB虚拟出一个串口来,以至于当该设备插入时显示一个USB口和一个虚拟串口
现在在做一网卡项目,实现的功能是当网卡插入Windows XP系统时,显示一个USB口和一个串口,其中USB口实现上网,串口用于走AT命令等,现在在Windows端的驱动程序都已有现成的,USB也可以上网了
但是目前系统只可以检测到USB口,无法检测到串口,请问如何将这个USB虚拟出一个串口来呢?
这个问题困了我好几天了,一直没找到这方面的资料,恳请好心人帮忙…
[解决办法]
如果是纯的软件虚拟,
1、你需要一个Bus Driver,在这个Bug上,产生一个虚拟的硬件PnP消息,系统就会装载相关的串口驱动程序。
2、也可以通过直接在注册表的增加一个串口设备。只是这样不支持PnP。
[解决办法]
需要改你那个“现有的windows端驱动程序”,在监测到usb口的同时就把虚拟的串口也创建出来...
[解决办法]
这是一个有点难度的驱动
建议架构
3个驱动
1个驱动是总线驱动,它挂在Window的USB总线驱动上
1个驱动是在总线驱动下的USB
1个驱动是在总线驱动下的串口
USB驱动和串口驱动向上发包,总线驱动仅仅负责将包转发到Window的USB总线驱动上,而且上网时,又发送AT命令的处理应该比较麻烦。
[解决办法]
不建议在原有的驱动上改,这样应该做不出来的
[解决办法]