求助!ISP1581怎么转到高速(HighSpeed)模式

[复制链接]
2732|0
 楼主| shinep 发表于 2008-3-12 13:47 | 显示全部楼层 |阅读模式
我现在用ISP1581开发USB2.0,固件程序参考了别人的代码,驱动用的是ISP1581通用驱动程序,现在用VC++开发一个应用程序,实现了中断及批量传输,但是都是在全速模式低下(FullSpeed),固件程序中全速到高速的转换程序己经有了,现在我不懂在应用程序中哪个命令是要进行高速传输的,我的头文件中只有以下的命令,望高手赐教,或给个建议,谢谢!<br /><br /><br />#define&nbsp;XXGDRV_IOCTL_DRV_VERSION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x800,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_DEV_VERSION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x801,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_SYS_INIT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x802,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_DEV_INIT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x803,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_READ_DATA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x804,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_WRITE_DATA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x805,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_SET_CMD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x806,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_GET_CMD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x807,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_CONTROL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x808,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_ENABLE_ISO_MODE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x809,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br />#define&nbsp;XXGDRV_IOCTL_READ_WRITE_REGISTER&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTL_CODE(FILE_DEVICE_UNKNOWN,&nbsp;0x80a,&nbsp;METHOD_BUFFERED,&nbsp;FILE_ANY_ACCESS)<br /><br /><br />HANDLE&nbsp;CUSBApp::OpenDevice(DWORD&nbsp;dwInstance,&nbsp;PDWORD&nbsp;pdwError)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;HANDLE&nbsp;hDev;<br />&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Class&nbsp;GUID&nbsp;used&nbsp;to&nbsp;open&nbsp;device<br />&nbsp;&nbsp;&nbsp;&nbsp;//<br />&nbsp;&nbsp;&nbsp;&nbsp;GUID&nbsp;ClassGuid&nbsp;=&nbsp;XXGDrvDevice_CLASS_GUID;<br />&nbsp;&nbsp;&nbsp;&nbsp;CDeviceInterfaceClass&nbsp;DevClass(&ClassGuid,&nbsp;pdwError);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;if(*pdwError&nbsp;!=&nbsp;ERROR_SUCCESS)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;INVALID_HANDLE_VALUE;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;CDeviceInterface&nbsp;DevInterface(&DevClass,&nbsp;dwInstance,&nbsp;pdwError);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;if(*pdwError&nbsp;!=&nbsp;ERROR_SUCCESS)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;INVALID_HANDLE_VALUE;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;hDev&nbsp;=&nbsp;CreateFile(<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DevInterface.DevicePath(),<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GENERIC_READ&nbsp;|&nbsp;GENERIC_WRITE,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FILE_SHARE_READ&nbsp;|&nbsp;FILE_SHARE_WRITE,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OPEN_EXISTING,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FILE_ATTRIBUTE_NORMAL,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;//if(lpszDevicePath)<br />&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;&nbsp;_tcscpy(lpszDevicePath,&nbsp;DevInterface.DevicePath());<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;if(hDev&nbsp;==&nbsp;INVALID_HANDLE_VALUE)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*pdwError&nbsp;=&nbsp;GetLastError();<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;hDev;<br />}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

30

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部