大佬教程收集整理的这篇文章主要介绍了windows – 我是否需要为CDC设备编写自己的主机端USB驱动程序,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我无法确定是否需要为我正在开发的设备连接的各种windows / linux / mac平台编写自己的设备驱动程序,或者是否由标准驱动程序提供功能.
我的设备是USB CDC(通信设备),显示为COM:端口.它还包括一个电池充电器,一旦设备被枚举,就需要从USB连接器获取完整的5个单位负载(500mA)电源电流.我的问题是,如果主机中的USB驱动程序决定它无法提供全部电源电流,那么它应该无法枚举设备.
; ----------------------------------------------------------------------------- ; XP/2000 USB Comms Port Setup ; ----------------------------------------------------------------------------- [Version] DriverVer=12/03/2008,1.0.0000.0000 Signature="$Windows NT$" Class=Ports ClassGUID={4d36e978-e325-11ce-bfc1-08002be10318} Provider=%YourCompany% [DesTinationDirs] DefaultDestDir=10,system32\drivers DriverCopyFiles=12 [ControlFlags] ExcludeFromSELEct = * [Manufacturer] %YourCOmpany%=YourCompanyserialPort [YourCompanyserialPort] %YourCompanyUSBserialPort%=YOURCOMPANYUSB,USB\VID_1234&PID_ABCD ; ; Win 2000/XP ; [YOURCOMPANYUSB] Include=mdmcpq.inf CopyFiles=FakeModemCopyFileSection [YOURCOMPANYUSB.HW] AddReg=YOURCOMPANYUSBAddReg.HW [YOURCOMPANYUSBAddReg.HW] HKR,DevLoader,*ntkern HKR,NTMPDriver,"usbser.sys" [YOURCOMPANYUSB.services] Addservice=usbser,0x00000002,FuncDrv_service_Inst [FuncDrv_service_Inst] DisplayName=%USBFilterString% serviCEType= 1 StartType = 3 ErrorControl = 0 serviceBinary = %12%\usbser.sys [Strings] YourCompany="YourCompany" YourCompanyserialPort="Your Company USB serial Port" USBFilterString = "USB serial service"
请注意,这仅适用于32位操作系统.虽然文件头没有这么说,但它也适用于Vista!
请注意,某些版本的usbser.sys存在重大问题,包括蓝屏,例如在传输64字节精确倍数的数据包时.如果您使用的是XP SP2或之前的版本,请安装修补程序KB943198. XP SP3和Vista都很好.
对于Mac,您只需要正确报告设备类,驱动程序扫描就会选择正确的驱动程序. (Windows会忽略设备类,这就是您需要提供.inf文件的原因).
以上是大佬教程为你收集整理的windows – 我是否需要为CDC设备编写自己的主机端USB驱动程序全部内容,希望文章能够帮你解决windows – 我是否需要为CDC设备编写自己的主机端USB驱动程序所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。