硬體 >> USB

HID EndPoint


HID裝置可以透過Control EndPoint跟USB Host溝通,但是HID裝置可以只有實做Control EndPoint(In/Out)做為溝通管道嗎?答案是不可以,因為HID規格有定義HID裝置必須有一個In EndPoint,而Out EndPoint則是可有可無,若Report Descriptor有描述Output敘述,但是卻沒有Out EndPoint時,USB Host會使用Control EndPoint(Out)做為溝通管道

A HID class device communicates with the HID class driver using either the Control (default) pipe or an Interrupt pipe.

The Control pipe is used for:
1. Receiving and responding to requests for USB control and class data.
2. Transmitting data when polled by the HID class driver (using the Get_Report request).
3. Receiving data from the host.

The Interrupt pipe are used for:
1. Receiving asynchronous (unrequested) data from the device.
2. Transmitting low latency data to the device.

The Interrupt Out pipe is optional. If a device declares an Interrupt Out endpoint
then Output reports are transmitted by the host to the device through the Interrupt
Out endpoint. If no Interrupt Out endpoint is declared then Output reports are
transmitted to a device through the Control endpoint, using Set_Report(Output)
requests.


返回上一頁