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

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

?? usb.h

?? 自制USB鍵盤,含源碼,原理圖 用了一個4*4的小鍵盤,有0-9十個數字鍵, Num Lock鍵,Caps Lock鍵,Shift鍵,Ctrl鍵,Alt鍵,回車鍵等。 最多可以有三個鍵同時按下
?? H
字號:
/******************************************************************
   本程序只供學習使用,未經作者許可,不得用于其它任何用途
      我的郵箱:computer-lov@tom.com
        歡迎訪問我的blog:  http://computer00.21ic.org

USB.H  file

作者:Computer-lov
建立日期: 2007.03.20
修改日期: 2007.03.22
版本:V1.1
版權所有,盜版必究。
Copyright(C) Computer-lov 2007-2017
All rights reserved            
*******************************************************************/

#ifndef __USB_H__
#define __USB_H__

#include "my_type.h"


// 定義標準的描述符類型,也就是USB分配的各種描述符的編號,即bDescriptorType 字段的值

#define DEVICE_DESCRIPTOR               0x01  //設備描述符
#define CONFIGURATION_DESCRIPTOR        0x02  //配置描述符
#define STRING_DESCRIPTOR               0x03  //字符串描述符
#define INTERFACE_DESCRIPTOR            0x04  //接口描述符
#define ENDPOINT_DESCRIPTOR             0x05  //端點描述符
#define HID_DESCRIPTOR                  0x21  //HID描述符
#define REPORT_DESCRIPTOR               0x22  //報告描述符
#define PHYSICAL_DESCRIPTOR             0x23  //物理描述符

//定義標準的USB請求命令,即USB分配的各種請求的編號,即bRequest字段的值

#define GET_STATUS                      0x00  //獲取狀態請求
#define CLEAR_FEATURE                   0x01  //清除特性請求
#define SET_FEATURE                     0x03  //設置特性請求
#define SET_ADDRESS                     0x05  //設置地址請求
#define GET_DESCRIPTOR                  0x06  //獲取描述符請求
#define SET_DESCRIPTOR                  0x07  //設置描述符請求
#define GET_CONFIGURATION               0x08  //獲取配置請求
#define SET_CONFIGURATION               0x09  //設置配置請求
#define GET_INTERFACE                   0x0A  //獲取接口請求
#define SET_INTERFACE                   0x0B  //設置接口請求
#define SYNCH_FRAME                     0x0C  //同步幀請求

//定義USB HID特定命令請求
#define GET_REPORT                      0x01  //獲取報告
#define GET_IDLE                        0x02  //獲取空閑狀態
#define GET_PROTOCOL                    0x03  //獲取協議
#define SET_REPORT                      0x09  //設置報告
#define SET_IDLE                        0x0A  //設置空閑
#define SET_PROTOCOL                    0x0B  //設置協議

//定義特性選擇器

#define ENDPOINT_HALT                   0x00  //端點的禁止特性
#define DEVICE_REMOTE_WAKEUP            0x01  //設備的遠程喚醒特性


//使用的端點數

//#define Number_Endpoint               0x05  //端點數量為5


//定義的端點類型
#define ENDPOINT_TYPE_CONTROL           0x00  //控制傳輸
#define ENDPOINT_TYPE_ISOCHRONOUS       0x01  //同步傳輸
#define ENDPOINT_TYPE_BULK              0x02  //批量傳輸
#define ENDPOINT_TYPE_INTERRUPT         0x03  //中斷傳輸



//定義標準的設備描述符結構

typedef struct _DEVICE_DCESCRIPTOR_STRUCT
{
 uint8 blength;                               //設備描述符的字節數大小
 uint8 bDescriptorType;	                      //設備描述符類型編號
 uint16 bcdUSB;                                //USB版本號
 uint8 bDeviceClass;                          //USB分配的設備類代碼
 uint8 bDeviceSubClass;                       //USB分配的子類代碼
 uint8 bDeviceProtocol;                       //USB分配的設備協議代碼
 uint8 bMaxPacketSize0;                       //端點0的最大包大小
 uint16 idVendor;                              //廠商編號
 uint16 idProduct;                             //產品編號
 uint16 bcdDevice;                             //設備出廠編號
 uint8 iManufacturer;                         //設備廠商字符串的索引
 uint8 iProduct;                              //描述產品字符串的索引
 uint8 iSerialNumber;                         //描述設備序列號字符串的索引
 uint8 bNumConfigurations;                    //可能的配置數量
}
DEVICE_DESCRIPTOR_STRUCT, * pDEVICE_DESCRIPTOR_STRUCT;


//定義標準的配置描述符結構

typedef struct _CONFIGURATION_DESCRIPTOR_STRUCT
{
 uint8 bLength;                               //配置描述符的字節數大小
 uint8 bDescriptorType;                       //配置描述符類型編號
 uint16 wTotalLength;                          //此配置返回的所有數據大小
 uint8 bNumInterfaces;                        //此配置所支持的接口數量
 uint8 bConfigurationValue;                   //Set_Configuration命令所需要的參數值
 uint8 iConfiguration;                        //描述該配置的字符串的索引值
 uint8 bmAttributes;                          //供電模式的選擇
 uint8 MaxPower;                              //設備從總線提取的最大電流
}
CONFIGURATION_DESCRIPTOR_STRUCT, * pCONFIGURATION_DESCRIPTOR_STRUCT;


//定義標準的接口描述符結構

typedef struct _INTERFACE_DESCRIPTOR_STRUCT
{
 uint8 bLength;                               //接口描述符的字節數大小
 uint8 bDescriptorType;                       //接口描述符的類型編號
 uint8 bInterfaceNumber;                      //該接口的編號
 uint8 bAlternateSetting;                     //備用的接口描述符編號
 uint8 bNumEndpoints;                         //該接口使用的端點數,不包括端點0
 uint8 bInterfaceClass;                       //接口類型
 uint8 bInterfaceSubClass;                    //接口子類型
 uint8 bInterfaceProtocol;                    //接口遵循的協議
 uint8 iInterface;                            //描述該接口的字符串索引值
}
INTERFACE_DESCRIPTOR_STRUCT, * pINTERFACE_DESCRIPTOR_STRUCT;


//定義標準的端點描述符結構

typedef struct _ENDPOINT_DESCRIPTOR_STRUCT
{
 uint8 bLength;                                //端點描述符字節數大小
 uint8 bDescriptorType;                       //端點描述符類型編號
 uint8 bEndpointAddress;                      //端點地址及輸入輸出屬性
 uint8 bmAttributes;                          //端點的傳輸類型屬性
 uint16 wMaxPacketSize;                        //端點收、發的最大包大小
 uint8 bInterval;                             //主機查詢端點的時間間隔
}
ENDPOINT_DESCRIPTOR_STRUCT, * pENDPOINT_DESCRIPTOR_STRUCT;


//HID描述符中的下級描述符號
typedef struct _HID_SUB_DESCRIPTOR_STRUCT
{
 uint8 bDescriptorType;    //下級描述符的類型編號
 uint16 wDescriptorLength;  //下級描述符的長度
}
HID_SUB_DESCRIPTOR_STRUCT,*pHID_SUB_DESCRIPTOR_STRUCT;

#define NUM_SUB_DESCRIPTORS 1

//定義HID描述符結構

typedef struct _HID_DESCRIPTOR_STRUCT
{
 uint8 bLength;
 uint8 bDescriptorType;
 uint16 bcdHID;
 uint8 bCountryCode;
 uint8 bNumDescriptors;
 HID_SUB_DESCRIPTOR_STRUCT HidSubDescriptors[NUM_SUB_DESCRIPTORS]; 
}
HID_DESCRIPTOR_STRUCT,*pHID_DESCRIPTOR_STRUCT;


//一個字符串描述符結構

typedef struct _STRING_DESCRIPTOR_STRUCT
{
 uint8 bLength;                                //字符串描述符的字節數大小
 uint8 bDescriptorType;                        //字符串描述符類型編號
 uint8 SomeDesriptor[36];                      //UNICODE編碼的字符串
}
STRING_DESCRIPTOR_STRUCT, * pSTRING_DESCRIPTOR_STRUCT;


//標準設備請求命令結構

typedef struct _REQUESTCMD
{
 uint8 bmRequestType;                         //請求命令類型
 uint8 bRequest;                              //請求命令代碼
 uint16 wValue;                                //命令信息
 uint16 wIndex;                                //索引信息
 uint16 wLength;                               //傳輸數據大小
}
REQUESTCMD, * pREQUESTCMD;
   

//setup_packet緩沖區

#define MAX_CONTROL_DATA_SIZE 16

typedef struct _control_data_buff
{
 REQUESTCMD DeviceRequest;                    //USB設備請求
 uint16 wLength;
 uint16 wCount;
 uint8 * pData;
 uint8 dataBuffer[MAX_CONTROL_DATA_SIZE];
}CONTROL_DATA_BUFF;
 

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆精品国产91久久久使用方法| 懂色av一区二区夜夜嗨| 成人免费一区二区三区视频| 国产片一区二区三区| 精品国产乱码久久久久久久| 日韩一区二区影院| 精品国产网站在线观看| 欧美电视剧在线看免费| xfplay精品久久| 久久影院午夜论| 国产亚洲欧美日韩俺去了| 国产亚洲欧美日韩俺去了| 国产欧美日韩卡一| 日韩美女视频19| 亚洲图片欧美视频| 秋霞电影网一区二区| 九九热在线视频观看这里只有精品| 日本不卡的三区四区五区| 激情综合网天天干| 岛国一区二区在线观看| 91行情网站电视在线观看高清版| 欧美亚洲精品一区| 日韩欧美中文字幕制服| 亚洲制服丝袜av| 偷窥少妇高潮呻吟av久久免费| 日本网站在线观看一区二区三区| 黄网站免费久久| 91蜜桃婷婷狠狠久久综合9色| 欧美午夜精品免费| 精品av综合导航| 国产精品传媒入口麻豆| 五月婷婷久久丁香| 国产成人福利片| 欧美无砖砖区免费| 久久久久久久性| 亚洲高清在线精品| 国产精品1024| 欧美猛男男办公室激情| 久久久久99精品国产片| 亚洲综合激情另类小说区| 裸体在线国模精品偷拍| 99re视频这里只有精品| 日韩一区二区在线免费观看| 椎名由奈av一区二区三区| 青草av.久久免费一区| 91在线国内视频| 精品少妇一区二区三区免费观看 | 亚洲欧美色综合| 日韩国产高清影视| 色综合视频在线观看| 久久综合九色欧美综合狠狠| 亚洲一区二区在线视频| 国产成人鲁色资源国产91色综| 欧美美女激情18p| 中文字幕亚洲在| 国内精品伊人久久久久av影院 | 一区二区三区在线观看欧美| 国产老妇另类xxxxx| 欧美一区二区三区在线电影| 亚洲欧洲制服丝袜| 国产69精品久久777的优势| 日韩一区二区免费高清| 一区二区在线免费| 92国产精品观看| 国产精品福利一区二区三区| 国内精品视频一区二区三区八戒| 欧美日韩视频在线观看一区二区三区| 中文字幕在线免费不卡| 国产电影精品久久禁18| 日韩欧美不卡在线观看视频| 日产国产欧美视频一区精品| 欧美日韩国产影片| 亚洲va天堂va国产va久| 欧美影视一区二区三区| 亚洲综合丁香婷婷六月香| jiyouzz国产精品久久| 国产欧美日韩中文久久| 国产成人av一区二区| 26uuu国产一区二区三区| 久久精品99国产国产精| 欧美mv和日韩mv国产网站| 麻豆精品在线观看| 精品女同一区二区| 国产精品1区2区| 久久精品视频一区二区| 成人黄色软件下载| 樱桃视频在线观看一区| 欧美亚洲另类激情小说| 日韩国产精品久久久久久亚洲| 制服丝袜在线91| 蜜桃视频在线观看一区| 久久精品一区二区三区不卡牛牛| 国产成人综合网站| 亚洲久本草在线中文字幕| 欧美性视频一区二区三区| 亚洲成人福利片| 精品久久人人做人人爱| 国产精品羞羞答答xxdd| 专区另类欧美日韩| 欧美日韩国产高清一区| 精品一区二区三区久久久| 国产喷白浆一区二区三区| 成人av在线电影| 婷婷六月综合网| 久久精品欧美日韩精品| 色综合久久综合中文综合网| 日韩精品久久久久久| 国产亚洲精品7777| 在线精品视频小说1| 久久精品99久久久| 国产精品动漫网站| 制服视频三区第一页精品| 国产精品一区2区| 亚洲精品美国一| 日韩女同互慰一区二区| 91女人视频在线观看| 捆绑调教美女网站视频一区| 国产精品狼人久久影院观看方式| 欧美日韩视频在线观看一区二区三区| 久久66热re国产| 亚洲一区二区三区激情| 久久久久成人黄色影片| 欧美人牲a欧美精品| 豆国产96在线|亚洲| 日韩黄色在线观看| 亚洲天堂久久久久久久| 欧美mv和日韩mv的网站| 欧美色电影在线| 成人激情免费视频| 韩国理伦片一区二区三区在线播放| 亚洲男女一区二区三区| 久久免费午夜影院| 91 com成人网| 91久久奴性调教| 成人动漫一区二区| 国产一区二区电影| 九九九精品视频| 亚洲1区2区3区视频| 一区二区三区电影在线播| 欧美国产精品v| 精品国产一二三区| 91精品国产免费| 欧美日韩性生活| 欧美影片第一页| 在线亚洲一区二区| 91网站在线播放| 99精品一区二区| 不卡av在线免费观看| 高清国产一区二区| 国产成+人+日韩+欧美+亚洲| 国产制服丝袜一区| 国产在线精品一区二区不卡了| 青青草97国产精品免费观看 | 午夜精品久久久久影视| 亚洲免费大片在线观看| 亚洲色图欧洲色图婷婷| 亚洲另类在线一区| 一区二区三区中文字幕精品精品 | 欧美色欧美亚洲另类二区| 99精品欧美一区| 91一区二区在线| 在线观看日韩国产| 欧美日韩亚洲综合| 欧美一级二级在线观看| 欧美精品一区二区在线播放| 26uuu精品一区二区| 国产亚洲精品久| 亚洲品质自拍视频网站| 亚洲图片欧美一区| 久久国产精品99精品国产| 久久99精品国产.久久久久久| 国产一区二区不卡在线| 懂色av一区二区三区免费看| 91丨porny丨首页| 欧美三区免费完整视频在线观看| 欧美二区三区91| 久久综合久久99| 亚洲免费三区一区二区| 日韩vs国产vs欧美| 国产河南妇女毛片精品久久久| 成人免费毛片片v| 欧美色涩在线第一页| 精品美女一区二区| 亚洲欧洲综合另类| 青青草国产精品亚洲专区无| 国产成人在线看| 欧美天堂一区二区三区| 久久久久久久久久看片| 亚洲精品国产成人久久av盗摄| 日本不卡在线视频| 成人精品国产福利| 91精品在线麻豆| 国产精品久久久久一区| 日韩国产精品久久久| 99在线热播精品免费| 欧美一区二区三区日韩视频| 国产精品国产精品国产专区不蜜| 天天av天天翘天天综合网色鬼国产| 国产精品99久久久久| 欧美丰满少妇xxxxx高潮对白 |