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

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

?? usb.h

?? 采用單片機控制PDIUSBD12芯片
?? 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一区二区三区免费野_久草精品视频
欧美偷拍一区二区| 欧美日韩一区二区电影| 日本vs亚洲vs韩国一区三区| 国产精品久久久久毛片软件| 国产日韩欧美综合在线| 国产欧美精品一区二区三区四区 | 日韩电影在线观看电影| 亚洲电影第三页| 午夜精品免费在线| 美女视频一区二区三区| 日韩avvvv在线播放| 奇米影视一区二区三区小说| 蜜桃av噜噜一区| 国产suv精品一区二区883| 成人毛片在线观看| 91久久精品午夜一区二区| 欧美精品乱人伦久久久久久| 欧美一区二区三区免费观看视频| 精品久久久久一区| 日本一区二区三区四区在线视频| 国产精品久久久久久久久免费樱桃| 亚洲女性喷水在线观看一区| 亚洲123区在线观看| 国产在线观看免费一区| 99国产精品视频免费观看| 精品污污网站免费看| 精品欧美乱码久久久久久1区2区| 欧美极品xxx| 亚洲国产视频一区二区| 国产综合色视频| 99精品一区二区三区| 日韩一区二区在线播放| 1区2区3区欧美| 理论片日本一区| 欧美综合亚洲图片综合区| 久久久亚洲欧洲日产国码αv| 国产精品国产三级国产| 欧美bbbbb| 欧美三级乱人伦电影| 国产欧美一区二区精品仙草咪| 亚洲精品国产成人久久av盗摄 | 欧美怡红院视频| 国产亚洲精久久久久久| 日韩电影在线免费观看| 94-欧美-setu| 久久久精品国产99久久精品芒果| 香蕉影视欧美成人| bt7086福利一区国产| 久久这里只有精品首页| 亚洲大片精品永久免费| av不卡在线播放| 2欧美一区二区三区在线观看视频| 一区二区三区资源| 国产suv一区二区三区88区| 欧美理论片在线| 亚洲色图视频网站| 成人午夜大片免费观看| 精品久久一区二区三区| 首页国产欧美日韩丝袜| 欧美天堂一区二区三区| 中文字幕一区二区三区乱码在线| 国产在线不卡一卡二卡三卡四卡| 91精品国产一区二区三区蜜臀| 一区二区三区四区在线| 成年人网站91| 亚洲国产电影在线观看| 国产精品99久久久久久久女警| 69堂成人精品免费视频| 亚洲bt欧美bt精品| 欧美日韩不卡在线| 五月天激情综合网| 欧美日韩亚州综合| 天天操天天综合网| 精品视频一区二区三区免费| 亚洲一区二区三区四区不卡| 色综合天天视频在线观看| ●精品国产综合乱码久久久久| 国产+成+人+亚洲欧洲自线| 国产日韩欧美a| 成人一级黄色片| 亚洲精品ww久久久久久p站 | 制服丝袜亚洲网站| 日本少妇一区二区| 亚洲精品一区二区三区99| 久久精品久久综合| 久久理论电影网| 青青草97国产精品免费观看无弹窗版| 国产成人高清视频| 91蜜桃在线免费视频| 制服丝袜亚洲色图| 亚洲成人动漫精品| 日韩一区二区电影在线| 久久精品99国产精品| 久久嫩草精品久久久精品| 国产精品正在播放| 亚洲乱码国产乱码精品精的特点 | 欧美色区777第一页| 午夜激情久久久| 欧美本精品男人aⅴ天堂| 国产一区二区伦理片| 中文字幕国产一区二区| 欧美三级视频在线| 国产一区二区不卡| 亚洲精品免费一二三区| 欧美一区二区三区公司| 美女视频一区在线观看| 精品久久久久一区二区国产| 不卡区在线中文字幕| 午夜视频一区二区| 国产视频一区二区在线| 欧美制服丝袜第一页| 国产一区二区主播在线| 亚洲欧美韩国综合色| 日韩欧美电影一二三| 懂色av一区二区三区蜜臀| 亚洲地区一二三色| 成人欧美一区二区三区黑人麻豆| 欧美精品亚洲一区二区在线播放| 国产精品一区二区不卡| 亚洲成人三级小说| 综合av第一页| 久久久国产精华| 91.麻豆视频| 欧美综合久久久| caoporen国产精品视频| 久久97超碰国产精品超碰| 亚洲一区欧美一区| 中文字幕在线观看一区| 久久综合av免费| 91精品久久久久久久久99蜜臂| 懂色一区二区三区免费观看| 麻豆精品国产91久久久久久| 一区二区免费在线播放| 国产亚洲1区2区3区| 欧美性猛交一区二区三区精品| 国产成人鲁色资源国产91色综 | 成人午夜av影视| 国产成人免费视频一区| 亚洲成人免费在线| 精品国产百合女同互慰| 884aa四虎影成人精品一区| 欧美亚洲综合色| 91麻豆精品一区二区三区| 青青青伊人色综合久久| 亚洲与欧洲av电影| 亚洲激情图片qvod| 亚洲欧美日韩系列| 国产精品久久久久久久久久久免费看| 日韩精品一区国产麻豆| 制服丝袜日韩国产| 欧美日本一道本| 欧美日韩视频第一区| 欧美日韩国产一区| 欧美日韩视频专区在线播放| 粉嫩av亚洲一区二区图片| 国产一区啦啦啦在线观看| 国产一区二区中文字幕| 激情小说亚洲一区| 国产一区不卡在线| 国产成人无遮挡在线视频| 国产精品1024久久| 成人在线综合网| 色婷婷综合久久久久中文| 在线观看视频一区| 欧美一三区三区四区免费在线看| 91蝌蚪porny九色| 7777女厕盗摄久久久| 日韩欧美一二三| 国产清纯白嫩初高生在线观看91 | 日韩精品免费专区| 美女网站一区二区| 处破女av一区二区| 91老师片黄在线观看| 91精品国产一区二区三区| 久久只精品国产| 亚洲美女少妇撒尿| 日韩av在线播放中文字幕| 国产一区二区免费看| 色天天综合久久久久综合片| 欧美日韩久久不卡| 国产欧美一区二区精品性| 亚洲自拍偷拍麻豆| 久久成人18免费观看| 99视频热这里只有精品免费| 欧洲一区二区三区免费视频| 日韩精品资源二区在线| 国产精品欧美久久久久一区二区| 亚洲一区二区三区免费视频| 久久精品国产亚洲一区二区三区| 成人一级视频在线观看| 337p亚洲精品色噜噜狠狠| 久久久天堂av| 亚洲国产日韩a在线播放性色| 国产一区二区三区在线看麻豆| 欧美吻胸吃奶大尺度电影| 日韩欧美在线网站| 亚洲欧洲成人自拍| 激情综合五月天| 欧美亚洲国产一区在线观看网站| 欧美日韩在线播放三区|