UINT8 GetDeviceDescr( PUINT8 buf ) // 获取设备描述符 { UINT8 s, len; UsbDevEndpSize = DEFAULT_ENDP0_SIZE; s = HostCtrlTransfer374( SetupGetDevDescr, buf, &len ); // 执行控制传输 if ( s == USB_INT_SUCCESS ) { UsbDevEndpSize =((PUSB_DEV_DESCR)buf )-> bMaxPacketSize0; // 端点0最大包长度,这是简化处理,正常应该先获取前8字节后立即更新UsbDevEndpSize再继续 if ( len < ( (PUSB_SETUP_REQ)SetupGetDevDescr ) -> wLengthL ) s = USB_INT_BUF_OVER; // 描述符长度错误 } return( s ); }
请教一下,现有一个产品不能 获取设备描述符,用了上面的程式 下面的看了很长时间,不是太理解: // 端点0最大包长度,这是简化处理,正常应该先获取前8字节后立即更新UsbDevEndpSize再继续
这个没有简化处理的应怎么写,给一个例程,谢谢!