C371346_375F2440A66FD1C882296D07948AE54C.pdf - 第17页
CM 108AH Highly Integrated USB Audio I/O Controller www .cmedia.com.tw Copyright© C-Media Electro nics Inc. R ev . 2.1 ︱ P age 17/27 7.3.2 HID Descriptors HID Interface Des criptor Offset Field Size Value (Hex) Descripti…

CM108AH
Highly Integrated USB Audio I/O Controller
www.cmedia.com.tw
Copyright© C-Media Electronics Inc. Rev. 2.1︱ Page 16/27
7.3 HID Feature
The CM108AH’s HID feature allows users to set volume up, volume down, playback mute and recording mute
button pins, and reports the changes to the host to synchronize host side settings. In addition, all CM108AH
internal registers can be accessed via HID function call.
7.3.1 What’s HID?
USB protocols can configure devices at startup or when they are plugged in at run time. These devices are
categorized into various device classes. Each device class defines the common behavior and protocols for
devices that serve similar functions. The HID (Human Interface Device) class is one of the device classes.
The HID class consists primarily of devices that are used to control the operation of computer systems.
Typical examples of HID class devices include:
Keyboards and pointing devices: mice, trackballs and joysticks
Front-panel controls: knobs, switches, buttons and sliders
Controls that might be found on VCR remote controls, games or simulation devices: data gloves,
throttles, and steering wheels
Devices that may not require human interaction but provide data in a similar format to HID class
devices: bar-code readers, thermometers or voltmeters

CM108AH
Highly Integrated USB Audio I/O Controller
www.cmedia.com.tw
Copyright© C-Media Electronics Inc. Rev. 2.1︱ Page 17/27
7.3.2 HID Descriptors
HID Interface Descriptor
Offset
Field
Size
Value (Hex)
Description
0
bLength
1
09
Size of this descriptor: 9 bytes
1
bDescriptorType
1
04
Interface descriptor type
2
bInterfaceNumber
1
03
Interface number: 3
3
bAlternateSetting
1
00
Alternate: 0
4
bNumEndpoints
1
01
Number of endpoints used by this interface: 1
5
bInterfaceClass
1
03
Interface class: HID
6
bInterfaceSubClass
1
00
Subclass: no
7
bInterfaceProtocol
1
00
Must be set to 0
8
iInterface
1
00
String descriptor index that describes this interface
HID Descriptor
Offset
Field
Size
Value (Hex)
Description
0
bLength
1
09
Total: 9 bytes
1
bDescriptorType
1
21
HID descriptor type
2
bcdHID
2
0100
HID class version 1.0
4
bCountryCode
1
00
5
bNumDescriptors
1
01
6
bDescriptorType
1
22
Report descriptor
7
wDescriptorLength
2
0030
Total size of the optional descriptor: 48 bytes
Interrupt IN Endpoint Descriptor
Offset
Field
Size
Value (Hex)
Description
0
bLength
1
07
Total: 7 bytes
1
bDescriptorType
1
05
Endpoint descriptor type
2
bEndpointAddress
1
83
In Endpoint Number = 3
3
bmAttributes
1
03
Interrupt endpoint type
4
wMaxPacketSize
2
0004
Maximum packet size: 4 bytes
6
bInterval
1
2
2ms

CM108AH
Highly Integrated USB Audio I/O Controller
www.cmedia.com.tw
Copyright© C-Media Electronics Inc. Rev. 2.1︱ Page 18/27
7.3.3 Windows Software Architecture for HID
Note: Please contact our sales for a C-Media SDK sample if needed
PCI enumerator
USB class driver (USBD.SYS)
USB hub driver (USBHUB.SYS)
USB
MiniDriver( HIDUSB.SYS)
HID class driver(HIDCLASS.SYS)
Gameport
MiniDriver(HIDGAME.SYS)
Gameport
Enumerator(GAMEUM.SYS)
Audio Driver
Keyboard-class driver
Mouse-class driver
Joy stick-class driver
C-Media SDK
Reports
(Device specification)
Winmm.dll
Direct input
HID.dll
Applications
User32.exe or User.exe