佚名通过本文主要向大家介绍了usb设备请求,usb设备描述请求失败,usb输入设备驱动,无法识别的usb设备,未知usb设备等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: USB设备请求的响应
描述:
case GD_DEVICE_QUALIFIER; //设备限定描述符
if( HighSpeedCapable( ) )
{
SUDPTRH=MSB( pDeviceQualDscr );
SUDPTRL=LSB( pDeviceQualDscr );
}
else
{
EZUSB_STALL_EP0( );
}
break;
请问:
HighSpeedCapable( ) 函数和 EZUSB_STALL_EP0( );函数是干什么用的。
刚入手USB,求大神带。
解决方案1:
描述:
USB设备请求
在USB设备请求响应的程序中:case GD_DEVICE_QUALIFIER; //设备限定描述符
if( HighSpeedCapable( ) )
{
SUDPTRH=MSB( pDeviceQualDscr );
SUDPTRL=LSB( pDeviceQualDscr );
}
else
{
EZUSB_STALL_EP0( );
}
break;
请问:
HighSpeedCapable( ) 函数和 EZUSB_STALL_EP0( );函数是干什么用的。
刚入手USB,求大神带。
解决方案1:
如果不支持高速,则直接将 Ep0 控制通道 Stall,表示不支持的 USB 请求。
Qualifier 描述符用来说明支持高速的 USB 设备如何在不同速度模式下切换。例如,当前是全速模式,但可以转换成高速;或反之。
因此,首先要检查设备是否支持高速。如果是,返回描述符。不过不支持高速,则直接将 Ep0 控制通道 Stall,表示不支持的 USB 请求。
HighSpeedCapable( ) 是检查是否支持高速模式;EZUSB_STALL_EP0( ); 是将 Ep0 Stall 掉。