阅读:1563回复:2
请教:ControlData.DeviceRequest.wIndex各位的含义?
在usb固件编程(d12+c51)中有下边一段程序:
endp = (unsigned char)(ControlData.DeviceRequest.wIndex & MAX_ENDPOINTS); if (ControlData.DeviceRequest.wIndex & (unsigned char) USB_ENDPOINT_DIRECTION_MASK) D12_SetEndpointStatus(endp*2 + 1, 0); else D12_SetEndpointStatus(endp*2, 0); 请问: 1、ControlData.DeviceRequest.wIndex 中各位是怎么定义的?在头文件中MAX_ENDPOINTS==0x3。 2、为什么在设置端点状态时,endp要乘2啊? |
|
|
沙发#
发布于:2004-03-31 11:16
INDEX2个字节中,高字节保留
低字节8个bit中 D7表示direction D6、D5、D4保留 D3、D2、D1、D0表示Endpoint Number 与上0x03是取出D1、D0位,得知要获得哪个端点的状态 |
|
板凳#
发布于:2004-03-31 11:17
*2是因为每个端点有2个端口号啊
pd12的datasheet上写的很清楚 |
|