SAMV71 Xplained Ultra Software Package 1.4

hid.h File Reference

Management of the generic HID features. More...

Go to the source code of this file.

Data Structures

struct  hid_descriptor_t
 HID descriptor. More...
union  hid_item_t
 HID report descriptor item. More...
union  hid_short_item_data_t
 HID report descriptor short item data. More...

Defines

HID Descriptor Types

#define HID_DESCRIPTOR   0x21
#define HID_REPORT_DESCRIPTOR   0x22
#define HID_PHYSICAL_DESCRIPTOR   0x23
Constants of field DESCRIPTOR_HID

#define HID_BDC   0x0111
 Numeric expression identifying the HID Class Specification release (here V1.11).
#define HID_CLASS_DESC_NB_DEFAULT   0x01
HID Country Codes

#define HID_COUNTRY_CODE_NOT_SUPPORTED   0
#define HID_COUNTRY_CODE_ARABIC   1
#define HID_COUNTRY_CODE_BELGIAN   2
#define HID_COUNTRY_CODE_CANADIAN_BILINGUAL   3
#define HID_COUNTRY_CODE_CANADIAN_FRENCH   4
#define HID_COUNTRY_CODE_CZECH_REPUBLIC   5
#define HID_COUNTRY_CODE_DANISH   6
#define HID_COUNTRY_CODE_FINNISH   7
#define HID_COUNTRY_CODE_FRENCH   8
#define HID_COUNTRY_CODE_GERMAN   9
#define HID_COUNTRY_CODE_GREEK   10
#define HID_COUNTRY_CODE_HEBREW   11
#define HID_COUNTRY_CODE_HUNGARY   12
#define HID_COUNTRY_CODE_INTERNATIONAL_ISO   13
#define HID_COUNTRY_CODE_ITALIAN   14
#define HID_COUNTRY_CODE_JAPAN_KATAKANA   15
#define HID_COUNTRY_CODE_KOREAN   16
#define HID_COUNTRY_CODE_LATIN_AMERICAN   17
#define HID_COUNTRY_CODE_NETHERLANDS_DUTCH   18
#define HID_COUNTRY_CODE_NORWEGIAN   19
#define HID_COUNTRY_CODE_PERSIAN_FARSI   20
#define HID_COUNTRY_CODE_POLAND   21
#define HID_COUNTRY_CODE_PORTUGUESE   22
#define HID_COUNTRY_CODE_RUSSIA   23
#define HID_COUNTRY_CODE_SLOVAKIA   24
#define HID_COUNTRY_CODE_SPANISH   25
#define HID_COUNTRY_CODE_SWEDISH   26
#define HID_COUNTRY_CODE_SWISS_FRENCH   27
#define HID_COUNTRY_CODE_SWISS_GERMAN   28
#define HID_COUNTRY_CODE_SWITZERLAND   29
#define HID_COUNTRY_CODE_TAIWAN   30
#define HID_COUNTRY_CODE_TURKISH_Q   31
#define HID_COUNTRY_CODE_UK   32
#define HID_COUNTRY_CODE_US   33
#define HID_COUNTRY_CODE_YUGOSLAVIA   34
#define HID_COUNTRY_CODE_TURKISH_F   35
HID KEYS values

#define HID_A   4
#define HID_B   5
#define HID_C   6
#define HID_D   7
#define HID_E   8
#define HID_F   9
#define HID_G   10
#define HID_H   11
#define HID_I   12
#define HID_J   13
#define HID_K   14
#define HID_L   15
#define HID_M   16
#define HID_N   17
#define HID_O   18
#define HID_P   19
#define HID_Q   20
#define HID_R   21
#define HID_S   22
#define HID_T   23
#define HID_U   24
#define HID_V   25
#define HID_W   26
#define HID_X   27
#define HID_Y   28
#define HID_Z   29
#define HID_1   30
#define HID_2   31
#define HID_3   32
#define HID_4   33
#define HID_5   34
#define HID_6   35
#define HID_7   36
#define HID_8   37
#define HID_9   38
#define HID_0   39
#define HID_ENTER   40
#define HID_ESCAPE   41
#define HID_BACKSPACE   42
#define HID_TAB   43
#define HID_SPACEBAR   44
#define HID_UNDERSCORE   45
#define HID_PLUS   46
#define HID_BACKSLASH   49
#define HID_TILDE   53
#define HID_COMMA   54
#define HID_DOT   55
#define HID_SLASH   56
#define HID_CAPS   LOCK 57
#define HID_F1   58
#define HID_F2   59
#define HID_F3   60
#define HID_F4   61
#define HID_F5   62
#define HID_F6   63
#define HID_F7   64
#define HID_F8   65
#define HID_F9   66
#define HID_F10   67
#define HID_F11   68
#define HID_F12   69
#define HID_PRINTSCREEN   70
#define HID_SCROLL   LOCK 71
#define HID_PAUSE   72
#define HID_INSERT   73
#define HID_HOME   74
#define HID_PAGEUP   75
#define HID_DELETE   76
#define HID_END   77
#define HID_PAGEDOWN   78
#define HID_RIGHT   79
#define HID_LEFT   80
#define HID_DOWN   81
#define HID_UP   82
#define HID_KEYPAD_NUM_LOCK   83
#define HID_KEYPAD_DIVIDE   84
#define HID_KEYPAD_AT   85
#define HID_KEYPAD_MULTIPLY   85
#define HID_KEYPAD_MINUS   86
#define HID_KEYPAD_PLUS   87
#define HID_KEYPAD_ENTER   88
#define HID_KEYPAD_1   89
#define HID_KEYPAD_2   90
#define HID_KEYPAD_3   91
#define HID_KEYPAD_4   92
#define HID_KEYPAD_5   93
#define HID_KEYPAD_6   94
#define HID_KEYPAD_7   95
#define HID_KEYPAD_8   96
#define HID_KEYPAD_9   97
#define HID_KEYPAD_0   98
HID modifier values

#define HID_MODIFIER_NONE   0x00
#define HID_MODIFIER_LEFT_CTRL   0x01
#define HID_MODIFIER_LEFT_SHIFT   0x02
#define HID_MODIFIER_LEFT_ALT   0x04
#define HID_MODIFIER_LEFT_GUI   0x08
#define HID_MODIFIER_RIGHT_CTRL   0x10
#define HID_MODIFIER_RIGHT_SHIFT   0x20
#define HID_MODIFIER_RIGHT_ALT   0x40
#define HID_MODIFIER_RIGHT_GUI   0x80
HID Requests

#define HID_GET_REPORT   0x01
#define HID_GET_IDLE   0x02
#define HID_GET_PROTOCOL   0x03
#define HID_SET_REPORT   0x09
#define HID_SET_IDLE   0x0A
#define HID_SET_PROTOCOL   0x0B
HID Report Types

#define HID_REPORT_INPUT   0x01
#define HID_REPORT_OUTPUT   0x02
#define HID_REPORT_FEATURE   0x03
Special HID Report IDs

#define HID_REPORT_ID_ALL   0x00
Special HID Idle Durations

#define HID_IDLE_DURATION_INDEFINITE   0x00
HID Protocols

#define HID_BOOT_PROTOCOL   0x00
#define HID_REPORT_PROTOCOL   0x01
HID Report Descriptor Item Types

#define HID_ITEM_TYPE_MAIN   0x00
#define HID_ITEM_TYPE_GLOBAL   0x01
#define HID_ITEM_TYPE_LOCAL   0x02
#define HID_ITEM_TYPE_RESERVED   0x03
Special HID Report Descriptor Item Tags

#define HID_ITEM_TAG_LONG_ITEM   0x0F
HID Report Descriptor Main Item Tags

#define HID_MAIN_ITEM_TAG_INPUT   0x08
#define HID_MAIN_ITEM_TAG_OUTPUT   0x09
#define HID_MAIN_ITEM_TAG_FEATURE   0x0B
#define HID_MAIN_ITEM_TAG_COLLECTION   0x0A
#define HID_MAIN_ITEM_TAG_END_COLLECTION   0x0C
HID Report Descriptor Global Item Tags

#define HID_GLOBAL_ITEM_TAG_USAGE_PAGE   0x00
#define HID_GLOBAL_ITEM_TAG_LOGICAL_MINIMUM   0x01
#define HID_GLOBAL_ITEM_TAG_LOGICAL_MAXIMUM   0x02
#define HID_GLOBAL_ITEM_TAG_PHYSICAL_MINIMUM   0x03
#define HID_GLOBAL_ITEM_TAG_PHYSICAL_MAXIMUM   0x04
#define HID_GLOBAL_ITEM_TAG_UNIT_EXPONENT   0x05
#define HID_GLOBAL_ITEM_TAG_UNIT   0x06
#define HID_GLOBAL_ITEM_TAG_REPORT_SIZE   0x07
#define HID_GLOBAL_ITEM_TAG_REPORT_ID   0x08
#define HID_GLOBAL_ITEM_TAG_REPORT_COUNT   0x09
#define HID_GLOBAL_ITEM_TAG_PUSH   0x0A
#define HID_GLOBAL_ITEM_TAG_POP   0x0B
HID Report Descriptor Local Item Tags

#define HID_LOCAL_ITEM_TAG_USAGE   0x00
#define HID_LOCAL_ITEM_TAG_USAGE_MINIMUM   0x01
#define HID_LOCAL_ITEM_TAG_USAGE_MAXIMUM   0x02
#define HID_LOCAL_ITEM_TAG_DESIGNATOR_INDEX   0x03
#define HID_LOCAL_ITEM_TAG_DESIGNATOR_MINIMUM   0x04
#define HID_LOCAL_ITEM_TAG_DESIGNATOR_MAXIMUM   0x05
#define HID_LOCAL_ITEM_TAG_STRING_INDEX   0x07
#define HID_LOCAL_ITEM_TAG_STRING_MINIMUM   0x08
#define HID_LOCAL_ITEM_TAG_STRING_MAXIMUM   0x09
#define HID_LOCAL_ITEM_TAG_DELIMITER   0x0A

Typedefs

typedef unsigned char hid_report_id_t
 HID report ID.

Detailed Description

Management of the generic HID features.

This file manages the generic HID features.

Author:
Atmel Corporation: http://www.atmel.com
Support and FAQ: http://support.atmel.no/

Definition in file hid.h.


Define Documentation

#define HID_CLASS_DESC_NB_DEFAULT   0x01

Numeric expression specifying the number of class descriptors (always at least one i.e. Report descriptor.)

Definition at line 71 of file hid.h.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines