亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hid.h

?? 嵌入式LINUX9系統應用開發詳解中USB編程實例
?? H
字號:
/*********************************************************************
 *
 * Copyright:
 *	MOTOROLA, INC. All Rights Reserved.  
 *  You are hereby granted a copyright license to use, modify, and
 *  distribute the SOFTWARE so long as this entire notice is
 *  retained without alteration in any modified and/or redistributed
 *  versions, and that such modified versions are clearly identified
 *  as such. No licenses are granted by implication, estoppel or
 *  otherwise under any patents or trademarks of Motorola, Inc. This 
 *  software is provided on an "AS IS" basis and without warranty.
 *
 *  To the maximum extent permitted by applicable law, MOTOROLA 
 *  DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED, INCLUDING 
 *  IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
 *  PURPOSE AND ANY WARRANTY AGAINST INFRINGEMENT WITH REGARD TO THE 
 *  SOFTWARE (INCLUDING ANY MODIFIED VERSIONS THEREOF) AND ANY 
 *  ACCOMPANYING WRITTEN MATERIALS.
 * 
 *  To the maximum extent permitted by applicable law, IN NO EVENT
 *  SHALL MOTOROLA BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING 
 *  WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS 
 *  INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY
 *  LOSS) ARISING OF THE USE OR INABILITY TO USE THE SOFTWARE.   
 * 
 *  Motorola assumes no responsibility for the maintenance and support
 *  of this software
 ********************************************************************/

/*
 * File:		hid.h
 * Purpose:		USB Class Human Interface Device definitions
 */

#ifndef HID_H
#define HID_H

/********************************************************************/

/* Function Prototypes */
uint8* hid_get_report_desc(void);
uint16 hid_get_report_desc_size(void);
uint8* hid_get_hid_desc(void);
uint16 hid_get_hid_desc_size(void);

/********************************************************************/

/* Structure for HID Class Descriptor */
typedef struct {
	uint8 bLength;
	uint8 bHidDescriptorType;
	uint8 bcdHIDL;
	uint8 bcdHIDH;
	uint8 bCountryCode;
	uint8 bNumDescriptors;
	uint8 bClassDescriptorType;
	uint8 wDescriptorLengthL;
	uint8 wDescriptorLengthH;
} USB_HID_DESC;

/********************************************************************/

/* USB HID Class Request Types */
#define GET_REPORT				0x01
#define GET_IDLE				0x02
#define GET_PROTOCOL			0x03
#define SET_REPORT				0x09
#define SET_IDLE				0x0A
#define SET_PROTOCOL			0x0B

/* Class Descriptor Types */
#define HID_DESC				0x21
#define REPORT_DESC				0x22
#define PHYSICAL_DESC			0x23

/* Interface Classes */
#define HID_INTERFACE			0x03

/* HID Interface Subclasses */
#define NO_SUBCLASS				0x00
#define BOOT_INTERFACE			0x01

/* HID Interface Protocol Codes */
#define NONE					0x00
#define KEYBOARD_INTERFACE		0x01
#define MOUSE_INTERFACE			0x02

/********************************************************************/

/* Report Descriptor Definitions */

/* Main Items */
#define INPUT					0x80
#define OUTPUT					0x90
#define FEATURE					0xB0
#define COLLECTION				0xA0
#define END_COLLECTION			0xC0

/* Input Item Arguments */
#define DATA					0x00
#define CONSTANT				0x01
#define ARRAY					0x00
#define VARIABLE				0x02
#define ABSOLUTE				0x00
#define RELATIVE				0x04
#define NO_WRAP					0x00
#define WRAP					0x08
#define LINEAR					0x00
#define NON_LINEAR				0x10
#define PREFERRED_STATE			0x00
#define NO_PREFERRED			0x20
#define NO_NULL_POSITION		0x00
#define NULL_STATE				0x40
#define NON_VOLATILE			0x00
#define VOLATILE				0x80
#define BIT_FIELD				0x00
#define BUFFERED_BYTES			0x100

/* Collection Item Arguments */
#define PHYSICAL				0x00
#define APPLICATION				0x01
#define LOGICAL					0x02

/* Global Items */
#define USAGE_PAGE				0x04
#define LOGICAL_MINIMUM			0x14
#define LOGICAL_MAXIMUM			0x24
#define PHYSICAL_MINIMUM		0x34
#define PHYSICAL_MAXIMUM		0x44
#define UNIT_EXPONENT			0x54
#define UNIT					0x64
#define REPORT_SIZE				0x74
#define REPORT_ID				0x84
#define REPORT_COUNT			0x94
#define PUSH					0xA4
#define POP						0xB4

/* Usage Page Item Arguments */
#define GENERIC_DESKTOP			0x01
#define SIMULATION				0x02
#define VR						0x03
#define SPORT					0x04
#define GAME					0x05
#define KEYBOARD_KEYPAD			0x07
#define LEDS					0x08
#define BUTTON					0x09
#define ORDINAL					0x0A
#define TELEPHONY				0x0B
#define CONSUMER				0x0C
#define DIGITIZER				0x0D
#define PID_PAGE				0x0F
#define UNICODE					0x10
#define ALPHANUMERIC_DISPLAY	0x14
#define BAR_CODE_SCANNER		0x8C
#define SCALE					0x8D
#define CAMERA					0x90
#define ARCADE					0x91

/* Local Items */
#define USAGE					0x08
#define USAGE_MINIMUM			0x18
#define USAGE_MAXIMUM			0x28
#define DESIGNATOR_INDEX		0x38
#define DESIGNATOR_MINIMUM		0x48
#define DESIGNATOR_MAXIMUM		0x58
#define STRING_INDEX			0x78
#define STRING_MINIMUM			0x88
#define STRING_MAXIMUM			0x98
#define DELIMITER				0xA8

/* Usage Item Arguments - Generic Desktop Page */
#define POINTER					0x01
#define MOUSE					0x02
#define JOYSTICK				0x04
#define GAME_PAD				0x05
#define KEYBOARD				0x06
#define KEYPAD					0x07
#define MULTI-AXIS_CONTROLLER	0x08
#define X						0x30
#define Y						0x31
#define Z						0x32
#define Rx						0x33
#define Ry						0x34
#define Rz						0x35
#define SLIDER					0x36
#define DIAL					0x37
#define WHEEL					0x38
#define HAT_SWITCH				0x39
#define COUNTED_BUFFER			0x3A
#define BYTE_COUNT				0x3B
#define MOTION_WAKEUP			0x3C
#define START					0x3D
#define SELECT					0x3E
#define Vx						0x40
#define Vy						0x41
#define Vz						0x42
#define Vbrx					0x43
#define Vbry					0x44
#define Vbrz					0x45
#define Vno						0x46
#define SYSTEM_CONTROL			0x80
#define SYSTEM_POWER_DOWN		0x81
#define SYSTEM_SLEEP			0x82
#define SYSTEM_WAKE_UP			0x83
#define SYSTEM_CONTEXT_MENU		0x84
#define SYSTEM_MAIN_MENU		0x85
#define SYSTEM_APP_MENU			0x86
#define SYSTEM_MENU_HELP		0x87
#define SYSTEM_MENU_EXIT		0x88
#define SYSTEM_MENU_SELECT		0x89
#define SYSTEM_MENU_RIGHT		0x8A
#define SYSTEM_MENU_LEFT		0x8B
#define SYSTEM_MENU_UP			0x8C
#define SYSTEM_MENU_DOWN		0x8D
#define D_PAD_UP				0x90
#define D_PAD_DOWN				0x91
#define D_PAD_RIGHT				0x92
#define D_PAD_LEFT				0x93

/********************************************************************/

/* Report Descriptor Macros */

#define SHORT_ITEM_1(ITEM, ARG)	(uint16)(((ITEM | 1) << 8) | (ARG & 0xFF))

/* Main Items */
#define INPUT3(x, y, z)		SHORT_ITEM_1(INPUT, (x | y | z))
#define INPUT1(x)			SHORT_ITEM_1(INPUT, x)
#define OUTPUT3(x, y, z)	SHORT_ITEM_1(OUTPUT, (x | y | z))
#define OUTPUT1(x)			SHORT_ITEM_1(OUTPUT, x)
#define FEATURE3(x, y, z)	SHORT_ITEM_1(FEATURE, (x | y | z))
#define FEATURE1(x)			SHORT_ITEM_1(FEATURE, x)
#define COLLECTION1(x)		SHORT_ITEM_1(COLLECTION, x)

/* Global Items */
#define USAGE_PAGE1(x)		SHORT_ITEM_1(USAGE_PAGE, x)
#define LOGICAL_MINIMUM1(x)	SHORT_ITEM_1(LOGICAL_MINIMUM, x)
#define LOGICAL_MAXIMUM1(x)	SHORT_ITEM_1(LOGICAL_MAXIMUM, x)
#define PHYSICAL_MINIMUM1(x)	SHORT_ITEM_1(PHYSICAL_MINIMUM, x)
#define PHYSICAL_MAXIMUM1(x)	SHORT_ITEM_1(PHYSICAL_MAXIMUM, x)
#define REPORT_SIZE1(x)		SHORT_ITEM_1(REPORT_SIZE, x)
#define REPORT_COUNT1(x)	SHORT_ITEM_1(REPORT_COUNT, x)	

/* Local Items */
#define USAGE1(x)			SHORT_ITEM_1(USAGE, x)
#define USAGE_MINIMUM1(x)	SHORT_ITEM_1(USAGE_MINIMUM, x)
#define USAGE_MAXIMUM1(x)	SHORT_ITEM_1(USAGE_MAXIMUM, x)

/********************************************************************/

#endif /* HID_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级二级三级乱码| 亚洲欧美日韩一区二区三区在线观看| 亚洲精品一区在线观看| 国产精品国产馆在线真实露脸 | 成人福利视频在线| 欧美性做爰猛烈叫床潮| 国产精品久久久久久久久久久免费看| 日韩成人午夜电影| 色88888久久久久久影院按摩 | 欧美视频第二页| 国产精品乱子久久久久| 久久国产精品露脸对白| 欧美日韩极品在线观看一区| 日本一区二区三区国色天香| 麻豆传媒一区二区三区| 欧美人xxxx| 一个色妞综合视频在线观看| aaa亚洲精品| 日本一区二区视频在线| 久久99精品国产麻豆婷婷| 欧美怡红院视频| 一区二区三区四区乱视频| 成人午夜视频在线观看| 国产女人水真多18毛片18精品视频 | 丁香婷婷深情五月亚洲| 2024国产精品| 精品一区二区三区香蕉蜜桃 | 18涩涩午夜精品.www| 国产精品影视天天线| 久久免费电影网| 国产一区在线观看视频| 精品久久久久久综合日本欧美| 日韩不卡免费视频| 日韩亚洲欧美中文三级| 久草在线在线精品观看| 久久综合给合久久狠狠狠97色69| 久久草av在线| 26uuu色噜噜精品一区| 韩国精品一区二区| 久久久国产精品不卡| 成人免费视频app| 亚洲天堂中文字幕| 色综合久久88色综合天天免费| 亚洲精品亚洲人成人网| 在线观看视频一区二区| 亚洲6080在线| 日韩小视频在线观看专区| 美女网站色91| 国产欧美日产一区| 色噜噜久久综合| 丝袜亚洲另类欧美| 精品少妇一区二区三区在线视频| 国产精品一二三在| 亚洲乱码中文字幕| 91麻豆精品国产91久久久久| 麻豆成人综合网| 最近中文字幕一区二区三区| 在线国产电影不卡| 久久精品国产亚洲a| 国产婷婷色一区二区三区在线| 91麻豆免费看片| 日韩精品一卡二卡三卡四卡无卡| 久久久青草青青国产亚洲免观| 菠萝蜜视频在线观看一区| 亚洲一区二区三区四区不卡| 欧美一区二区大片| 成人精品国产福利| 石原莉奈一区二区三区在线观看 | 成人avav影音| 亚洲va韩国va欧美va| www欧美成人18+| 日本韩国一区二区三区视频| 美美哒免费高清在线观看视频一区二区 | 国产一区视频在线看| 亚洲啪啪综合av一区二区三区| 日韩一二三区不卡| www.欧美日韩| 精品一二三四在线| 亚洲一区二区五区| 国产精品欧美久久久久无广告 | 亚洲国产成人tv| 国产午夜精品一区二区三区四区| 色视频一区二区| 国产乱子伦一区二区三区国色天香| 亚洲天堂精品在线观看| 久久婷婷综合激情| 91精品国产综合久久久蜜臀粉嫩| 成人免费高清在线观看| 精品在线观看免费| 亚洲bt欧美bt精品| 玉足女爽爽91| 欧美国产精品一区二区| 欧美一级黄色录像| 欧美视频在线一区| 99久久99久久精品免费观看| 国产一区二区电影| 精品一区二区在线视频| 天堂va蜜桃一区二区三区漫画版| 国产精品久久久久久福利一牛影视| 日韩精品一区二区三区视频播放 | 日日欢夜夜爽一区| 自拍偷拍亚洲激情| 国产欧美日韩精品a在线观看| 欧美不卡视频一区| 欧美精品国产精品| 欧美高清视频一二三区 | 精品国产免费一区二区三区四区| 欧美日韩一区二区三区四区五区| 94-欧美-setu| 99久久精品国产网站| 成人激情综合网站| 成人av在线电影| 不卡视频免费播放| 不卡在线观看av| 99视频精品在线| 91麻豆视频网站| 91丨九色丨蝌蚪富婆spa| av资源网一区| 91玉足脚交白嫩脚丫在线播放| 成人av在线电影| 99精品视频免费在线观看| 成人avav在线| 色哟哟一区二区三区| 欧美在线free| 欧美精品三级日韩久久| 日韩欧美一二三| 精品国产3级a| 国产精品免费aⅴ片在线观看| 国产精品系列在线| 亚洲色图欧美偷拍| 亚洲伊人伊色伊影伊综合网| 亚洲精品一二三四区| 视频一区欧美精品| 九色|91porny| 91麻豆国产自产在线观看| 欧美在线看片a免费观看| 欧美日本一道本| 久久色.com| 亚洲精品少妇30p| 久久草av在线| av中文字幕不卡| 制服丝袜成人动漫| 久久久精品黄色| 亚洲国产日日夜夜| 精品在线一区二区三区| 成人h精品动漫一区二区三区| 在线观看av一区二区| 日韩欧美国产麻豆| 国产精品成人一区二区艾草| 亚洲第一电影网| 成人综合激情网| 欧美日韩在线播| 久久精品欧美日韩精品| 亚洲一区二区三区小说| 国精品**一区二区三区在线蜜桃| 成人黄色电影在线| 在线播放亚洲一区| 国产精品伦理在线| 久久成人久久鬼色| 色婷婷国产精品综合在线观看| 日韩欧美美女一区二区三区| 亚洲欧洲精品成人久久奇米网| 午夜精品影院在线观看| 成人夜色视频网站在线观看| 欧美日韩视频不卡| 中文字幕一区不卡| 久久爱www久久做| 欧美在线观看一区| 一区在线观看免费| 精品一区二区精品| 欧美色图12p| 成人欧美一区二区三区| 国产美女av一区二区三区| 欧美男男青年gay1069videost| 国产精品视频一二| 国产一区二区精品久久91| 7777女厕盗摄久久久| 一区二区在线观看免费 | 欧美午夜精品一区二区蜜桃| 国产亚洲欧美日韩俺去了| 日本aⅴ亚洲精品中文乱码| 91国偷自产一区二区开放时间 | 高潮精品一区videoshd| 日韩欧美一区电影| 日本欧美一区二区| 欧美日韩一区三区| 一区二区三区日韩欧美| www.av精品| 国产精品午夜免费| 春色校园综合激情亚洲| 国产日韩欧美制服另类| 国内不卡的二区三区中文字幕| 欧美电影精品一区二区| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美视频三区在线播放| 亚洲第一精品在线| 在线成人午夜影院| 秋霞成人午夜伦在线观看| 欧美久久婷婷综合色| 视频一区二区中文字幕|