USBD_CalculateUsbBandwidth 함수(usbdlib.h)
USBD_CalculateUsbBandwidth 루틴은 Windows XP 이상 운영 체제에서 더 이상 사용되지 않습니다. 사용하지 마십시오.
Syntax
ULONG USBD_CalculateUsbBandwidth(
[in] ULONG MaxPacketSize,
[in] UCHAR EndpointType,
[in] BOOLEAN LowSpeed
);
매개 변수
[in] MaxPacketSize
최대 패킷 크기를 지정합니다.
[in] EndpointType
파이프 형식을 지정하는 USBD_PIPE_TYPE 형식의 값을 포함합니다.
[in] LowSpeed
TRUE이면 디바이스가 저속 디바이스임을 나타냅니다. FALSE인 경우 이 멤버는 디바이스가 고속 디바이스임을 나타냅니다.
반환 값
USBD_CalculateUsbBandwidth 루틴은 대량 및 제어 엔드포인트에 대해 0을 반환하고 밀리초당 비트에서 사용되는 대역폭을 반환합니다. 는 다른 모든 엔드포인트에 대해 를 반환합니다.
설명
USBD_CalculateUsbBandwidth 루틴은 다음 절차를 사용하여 대역폭을 근사화합니다. 먼저 USBD_CalculateUsbBandwidthMaxPacketSize에 지정된 가능한 가장 큰 패킷 크기를 EndpointType에 지정된 엔드포인트 유형과 연결된 오버헤드에 추가합니다. 다음으로 , USBD_CalculateUsbBandwidth 이 합계를 8로 곱하여 단위를 밀리초당 바이트 에서 밀리초당 비트로 변환 합니다 . 마지막으로 USBD_CalculateUsbBandwidth 이 수량을 7/6으로 곱하여 필러 비트를 고려합니다. 최악의 경우 6비트마다 데이터 스트림에 1비트 필러 데이터가 박제됩니다. USBD_CalculateUsbBandwidth 최악의 가정을 사용하여 파이프에 필요한 대역폭을 계산합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | 더 이상 사용되지 않습니다. |
대상 플랫폼 | 유니버설 |
헤더 | usbdlib.h(Usbdlib.h 포함) |
라이브러리 | Usbd.lib |
IRQL | <=DISPATCH_LEVEL |