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

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

?? usbconfig-prototype.h

?? USBbootHIT包含usb驅動源碼
?? H
字號:
/* Name: usbconfig.h * Project: AVR USB driver * Author: Christian Starkjohann * Creation Date: 2005-04-01 * Tabsize: 4 * Copyright: (c) 2005 by OBJECTIVE DEVELOPMENT Software GmbH * License: GNU GPL v2 (see License.txt) or proprietary (CommercialLicense.txt) * This Revision: $Id: usbconfig-prototype.h 464 2007-12-26 21:15:04Z cs $ */#ifndef __usbconfig_h_included__#define __usbconfig_h_included__/*General Description:This file is an example configuration (with inline documentation) for the USBdriver. It configures AVR-USB for an ATMega8 with USB D+ connected to Port Dbit 2 (which is also hardware interrupt 0) and USB D- to Port D bit 0. You maywire the lines to any other port, as long as D+ is also wired to INT0.To create your own usbconfig.h file, copy this file to the directorycontaining "usbdrv" (that is your project firmware source directory) andrename it to "usbconfig.h". Then edit it accordingly.*//* ---------------------------- Hardware Config ---------------------------- */#define USB_CFG_IOPORTNAME      D/* This is the port where the USB bus is connected. When you configure it to * "B", the registers PORTB, PINB and DDRB will be used. */#define USB_CFG_DMINUS_BIT      0/* This is the bit number in USB_CFG_IOPORT where the USB D- line is connected. * This may be any bit in the port. */#define USB_CFG_DPLUS_BIT       2/* This is the bit number in USB_CFG_IOPORT where the USB D+ line is connected. * This may be any bit in the port. Please note that D+ must also be connected * to interrupt pin INT0! [You can also use other interrupts, see section * "Optional MCU Description" below, or you can connect D- to the interrupt, as * it is required if you use the USB_COUNT_SOF feature. If you use D- for the * interrupt, the USB interrupt will also be triggered at Start-Of-Frame * markers every millisecond.] *//* #define USB_CFG_CLOCK_KHZ       (F_CPU/1000) *//* Clock rate of the AVR in MHz. Legal values are 12000, 15000, 16000 or 16500. * The 16.5 MHz version of the code requires no crystal, it tolerates +/- 1% * deviation from the nominal frequency. All other rates require a precision * of 2000 ppm and thus a crystal! * Default if not specified: 12 MHz *//* ----------------------- Optional Hardware Config ------------------------ *//* #define USB_CFG_PULLUP_IOPORTNAME   D *//* If you connect the 1.5k pullup resistor from D- to a port pin instead of * V+, you can connect and disconnect the device from firmware by calling * the macros usbDeviceConnect() and usbDeviceDisconnect() (see usbdrv.h). * This constant defines the port on which the pullup resistor is connected. *//* #define USB_CFG_PULLUP_BIT          4 *//* This constant defines the bit number in USB_CFG_PULLUP_IOPORT (defined * above) where the 1.5k pullup resistor is connected. See description * above for details. *//* --------------------------- Functional Range ---------------------------- */#define USB_CFG_HAVE_INTRIN_ENDPOINT    1/* Define this to 1 if you want to compile a version with two endpoints: The * default control endpoint 0 and an interrupt-in endpoint (any other endpoint * number). */#define USB_CFG_HAVE_INTRIN_ENDPOINT3   0/* Define this to 1 if you want to compile a version with three endpoints: The * default control endpoint 0, an interrupt-in endpoint 3 (or the number * configured below) and a catch-all default interrupt-in endpoint as above. * You must also define USB_CFG_HAVE_INTRIN_ENDPOINT to 1 for this feature. */#define USB_CFG_EP3_NUMBER              3/* If the so-called endpoint 3 is used, it can now be configured to any other * endpoint number (except 0) with this macro. Default if undefined is 3. *//* #define USB_INITIAL_DATATOKEN           USBPID_DATA0 *//* The above macro defines the startup condition for data toggling on the * interrupt/bulk endpoints 1 and 3. Defaults to USBPID_DATA0. */#define USB_CFG_IMPLEMENT_HALT          0/* Define this to 1 if you also want to implement the ENDPOINT_HALT feature * for endpoint 1 (interrupt endpoint). Although you may not need this feature, * it is required by the standard. We have made it a config option because it * bloats the code considerably. */#define USB_CFG_INTR_POLL_INTERVAL      20/* If you compile a version with endpoint 1 (interrupt-in), this is the poll * interval. The value is in milliseconds and must not be less than 10 ms for * low speed devices. */#define USB_CFG_IS_SELF_POWERED         0/* Define this to 1 if the device has its own power supply. Set it to 0 if the * device is powered from the USB bus. */#define USB_CFG_MAX_BUS_POWER           100/* Set this variable to the maximum USB bus power consumption of your device. * The value is in milliamperes. [It will be divided by two since USB * communicates power requirements in units of 2 mA.] */#define USB_CFG_IMPLEMENT_FN_WRITE      0/* Set this to 1 if you want usbFunctionWrite() to be called for control-out * transfers. Set it to 0 if you don't need it and want to save a couple of * bytes. */#define USB_CFG_IMPLEMENT_FN_READ       0/* Set this to 1 if you need to send control replies which are generated * "on the fly" when usbFunctionRead() is called. If you only want to send * data from a static buffer, set it to 0 and return the data from * usbFunctionSetup(). This saves a couple of bytes. */#define USB_CFG_IMPLEMENT_FN_WRITEOUT   0/* Define this to 1 if you want to use interrupt-out (or bulk out) endpoints. * You must implement the function usbFunctionWriteOut() which receives all * interrupt/bulk data sent to any endpoint other than 0. The endpoint number * can be found in 'usbRxToken'. */#define USB_CFG_HAVE_FLOWCONTROL        0/* Define this to 1 if you want flowcontrol over USB data. See the definition * of the macros usbDisableAllRequests() and usbEnableAllRequests() in * usbdrv.h. *//* #define USB_RX_USER_HOOK(data, len)     if(usbRxToken == (uchar)USBPID_SETUP) blinkLED(); *//* This macro is a hook if you want to do unconventional things. If it is * defined, it's inserted at the beginning of received message processing. * If you eat the received message and don't want default processing to * proceed, do a return after doing your things. One possible application * (besides debugging) is to flash a status LED on each packet. */#define USB_COUNT_SOF                   0/* define this macro to 1 if you need the global variable "usbSofCount" which * counts SOF packets. This feature requires that the hardware interrupt is * connected to D- instead of D+. *//* -------------------------- Device Description --------------------------- */#define  USB_CFG_VENDOR_ID       0xc0, 0x16/* USB vendor ID for the device, low byte first. If you have registered your * own Vendor ID, define it here. Otherwise you use obdev's free shared * VID/PID pair. Be sure to read USBID-License.txt for rules! * This template uses obdev's shared VID/PID pair for HIDs: 0x16c0/0x5df. * Use this VID/PID pair ONLY if you understand the implications! */#define  USB_CFG_DEVICE_ID       0xdf, 0x05/* This is the ID of the product, low byte first. It is interpreted in the * scope of the vendor ID. If you have registered your own VID with usb.org * or if you have licensed a PID from somebody else, define it here. Otherwise * you use obdev's free shared VID/PID pair. Be sure to read the rules in * USBID-License.txt! * This template uses obdev's shared VID/PID pair for HIDs: 0x16c0/0x5df. * Use this VID/PID pair ONLY if you understand the implications! */#define USB_CFG_DEVICE_VERSION  0x00, 0x01/* Version number of the device: Minor number first, then major number. */#define USB_CFG_VENDOR_NAME     'w', 'w', 'w', '.', 'o', 'b', 'd', 'e', 'v', '.', 'a', 't'#define USB_CFG_VENDOR_NAME_LEN 12/* These two values define the vendor name returned by the USB device. The name * must be given as a list of characters under single quotes. The characters * are interpreted as Unicode (UTF-16) entities. * If you don't want a vendor name string, undefine these macros. * ALWAYS define a vendor name containing your Internet domain name if you use * obdev's free shared VID/PID pair. See the file USBID-License.txt for * details. */#define USB_CFG_DEVICE_NAME     'T', 'e', 'm', 'p', 'l', 'a', 't', 'e'#define USB_CFG_DEVICE_NAME_LEN 8/* Same as above for the device name. If you don't want a device name, undefine * the macros. See the file USBID-License.txt before you assign a name if you * use a shared VID/PID. *//*#define USB_CFG_SERIAL_NUMBER   'N', 'o', 'n', 'e' *//*#define USB_CFG_SERIAL_NUMBER_LEN   0 *//* Same as above for the serial number. If you don't want a serial number, * undefine the macros. * It may be useful to provide the serial number through other means than at * compile time. See the section about descriptor properties below for how * to fine tune control over USB descriptors such as the string descriptor * for the serial number. */#define USB_CFG_DEVICE_CLASS        0#define USB_CFG_DEVICE_SUBCLASS     0/* See USB specification if you want to conform to an existing device class. */#define USB_CFG_INTERFACE_CLASS     3   /* HID */#define USB_CFG_INTERFACE_SUBCLASS  0#define USB_CFG_INTERFACE_PROTOCOL  0/* See USB specification if you want to conform to an existing device class or * protocol. * This template defines a HID class device. If you implement a vendor class * device, set USB_CFG_INTERFACE_CLASS to 0 and USB_CFG_DEVICE_CLASS to 0xff. */#define USB_CFG_HID_REPORT_DESCRIPTOR_LENGTH    42  /* total length of report descriptor *//* Define this to the length of the HID report descriptor, if you implement * an HID device. Otherwise don't define it or define it to 0. * Since this template defines a HID device, it must also specify a HID * report descriptor length. You must add a PROGMEM character array named * "usbHidReportDescriptor" to your code which contains the report descriptor. * Don't forget to keep the array and this define in sync! *//* #define USB_PUBLIC static *//* Use the define above if you #include usbdrv.c instead of linking against it. * This technique saves a couple of bytes in flash memory. *//* ------------------- Fine Control over USB Descriptors ------------------- *//* If you don't want to use the driver's default USB descriptors, you can * provide our own. These can be provided as (1) fixed length static data in * flash memory, (2) fixed length static data in RAM or (3) dynamically at * runtime in the function usbFunctionDescriptor(). See usbdrv.h for more * information about this function. * Descriptor handling is configured through the descriptor's properties. If * no properties are defined or if they are 0, the default descriptor is used. * Possible properties are: *   + USB_PROP_IS_DYNAMIC: The data for the descriptor should be fetched *     at runtime via usbFunctionDescriptor(). *   + USB_PROP_IS_RAM: The data returned by usbFunctionDescriptor() or found *     in static memory is in RAM, not in flash memory. *   + USB_PROP_LENGTH(len): If the data is in static memory (RAM or flash), *     the driver must know the descriptor's length. The descriptor itself is *     found at the address of a well known identifier (see below). * List of static descriptor names (must be declared PROGMEM if in flash): *   char usbDescriptorDevice[]; *   char usbDescriptorConfiguration[]; *   char usbDescriptorHidReport[]; *   char usbDescriptorString0[]; *   int usbDescriptorStringVendor[]; *   int usbDescriptorStringDevice[]; *   int usbDescriptorStringSerialNumber[]; * Other descriptors can't be provided statically, they must be provided * dynamically at runtime. * * Descriptor properties are or-ed or added together, e.g.: * #define USB_CFG_DESCR_PROPS_DEVICE   (USB_PROP_IS_RAM | USB_PROP_LENGTH(18)) * * The following descriptors are defined: *   USB_CFG_DESCR_PROPS_DEVICE *   USB_CFG_DESCR_PROPS_CONFIGURATION *   USB_CFG_DESCR_PROPS_STRINGS *   USB_CFG_DESCR_PROPS_STRING_0 *   USB_CFG_DESCR_PROPS_STRING_VENDOR *   USB_CFG_DESCR_PROPS_STRING_PRODUCT *   USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER *   USB_CFG_DESCR_PROPS_HID *   USB_CFG_DESCR_PROPS_HID_REPORT *   USB_CFG_DESCR_PROPS_UNKNOWN (for all descriptors not handled by the driver) * */#define USB_CFG_DESCR_PROPS_DEVICE                  0#define USB_CFG_DESCR_PROPS_CONFIGURATION           0#define USB_CFG_DESCR_PROPS_STRINGS                 0#define USB_CFG_DESCR_PROPS_STRING_0                0#define USB_CFG_DESCR_PROPS_STRING_VENDOR           0#define USB_CFG_DESCR_PROPS_STRING_PRODUCT          0#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER    0#define USB_CFG_DESCR_PROPS_HID                     0#define USB_CFG_DESCR_PROPS_HID_REPORT              0#define USB_CFG_DESCR_PROPS_UNKNOWN                 0/* ----------------------- Optional MCU Description ------------------------ *//* The following configurations have working defaults in usbdrv.h. You * usually don't need to set them explicitly. Only if you want to run * the driver on a device which is not yet supported or with a compiler * which is not fully supported (such as IAR C) or if you use a differnt * interrupt than INT0, you may have to define some of these. *//* #define USB_INTR_CFG            MCUCR *//* #define USB_INTR_CFG_SET        ((1 << ISC00) | (1 << ISC01)) *//* #define USB_INTR_CFG_CLR        0 *//* #define USB_INTR_ENABLE         GIMSK *//* #define USB_INTR_ENABLE_BIT     INT0 *//* #define USB_INTR_PENDING        GIFR *//* #define USB_INTR_PENDING_BIT    INTF0 *//* #define USB_INTR_VECTOR         SIG_INTERRUPT0 */#endif /* __usbconfig_h_included__ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区欧美一区| 亚洲成人av福利| 欧美午夜精品一区二区三区| 午夜欧美视频在线观看| 国产肉丝袜一区二区| 91老司机福利 在线| 久久99精品国产麻豆婷婷洗澡| 国产精品三级av在线播放| 欧美妇女性影城| 99久久99久久免费精品蜜臀| 久久精品国产**网站演员| 综合久久一区二区三区| 26uuu国产一区二区三区| 欧美午夜精品理论片a级按摩| 成人综合婷婷国产精品久久| 麻豆一区二区三| 亚洲成人中文在线| 中文字幕视频一区二区三区久| 欧美va亚洲va香蕉在线| 欧美日韩精品电影| 色婷婷亚洲综合| 波多野结衣一区二区三区| 久久99精品国产麻豆不卡| 日韩精品福利网| 亚洲综合一二区| 亚洲色图在线看| 国产精品素人视频| 日本一区二区三区免费乱视频| 精品少妇一区二区三区视频免付费| 欧洲生活片亚洲生活在线观看| av成人老司机| 成人丝袜高跟foot| 粉嫩蜜臀av国产精品网站| 国产精品中文欧美| 精品亚洲国内自在自线福利| 免费久久99精品国产| 午夜精品爽啪视频| 三级影片在线观看欧美日韩一区二区| 亚洲免费三区一区二区| 亚洲天堂福利av| 亚洲美女视频在线观看| 亚洲精品免费视频| 亚洲精品免费看| 亚洲香蕉伊在人在线观| 午夜在线成人av| 蜜桃在线一区二区三区| 裸体健美xxxx欧美裸体表演| 久久av老司机精品网站导航| 国内外成人在线| 国产精品小仙女| 成人精品国产福利| 91啪在线观看| 欧美日韩1234| 日韩精品一区二区三区四区视频| 日韩精品资源二区在线| 欧美精品一区二区高清在线观看| 久久免费的精品国产v∧| 久久精品视频一区二区三区| 久久精品人人做| 亚洲欧洲三级电影| 亚洲一区免费在线观看| 日韩高清不卡一区二区| 久久成人18免费观看| 国产成人午夜精品影院观看视频| 国产成人免费视频一区| 91蜜桃在线免费视频| 欧美日韩一本到| 欧美成人精品高清在线播放| 欧美激情一区二区在线| 一区二区三区91| 青青草国产成人av片免费| 国产美女视频一区| 91影视在线播放| 欧美一区二区日韩一区二区| 久久精品无码一区二区三区| 一区二区成人在线| 六月丁香综合在线视频| 99久久er热在这里只有精品15| 欧美色图第一页| 久久亚洲综合av| 一区二区三区.www| 精品制服美女丁香| 色美美综合视频| 欧美r级在线观看| 亚洲精品日韩综合观看成人91| 免费观看成人鲁鲁鲁鲁鲁视频| 国产精品自在欧美一区| 在线观看免费视频综合| 26uuu另类欧美亚洲曰本| 亚洲影视在线观看| 国产精品白丝av| 欧美无砖砖区免费| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲精品免费在线观看| 国产激情91久久精品导航| 欧美日韩视频在线一区二区| 国产欧美视频在线观看| 午夜欧美视频在线观看| 99在线精品视频| 精品va天堂亚洲国产| 亚洲午夜视频在线观看| 国产大陆a不卡| 日韩一区二区在线观看| 亚洲欧美一区二区不卡| 国产91精品入口| 日韩三级伦理片妻子的秘密按摩| 亚洲男帅同性gay1069| 国产成人精品一区二| 欧美一区二区视频在线观看 | 人人精品人人爱| 99国产精品久久久| 久久久久久99久久久精品网站| 亚洲国产毛片aaaaa无费看| 成人三级在线视频| 国产婷婷一区二区| 麻豆一区二区三| 91精品国产色综合久久ai换脸 | 欧美疯狂做受xxxx富婆| 欧美性受xxxx黑人xyx性爽| 国产精品毛片大码女人| 韩国av一区二区| 精品国产网站在线观看| 日本免费在线视频不卡一不卡二| 日本韩国一区二区| 亚洲欧洲制服丝袜| 99热精品国产| 国产精品国产三级国产aⅴ入口| 99精品欧美一区| 成人毛片老司机大片| 国产欧美一区视频| 国产一区二区免费视频| 欧美大片一区二区三区| 麻豆成人免费电影| 日韩午夜精品视频| 日本不卡视频一二三区| 91.xcao| 亚洲午夜电影在线| 精品视频免费在线| 视频一区二区三区在线| 欧美高清激情brazzers| 日本亚洲最大的色成网站www| 日本一区二区不卡视频| 日本伊人精品一区二区三区观看方式| 欧美疯狂性受xxxxx喷水图片| 日本sm残虐另类| 2020国产精品自拍| 国产精品白丝av| 亚洲手机成人高清视频| 色综合天天综合色综合av| 伊人色综合久久天天人手人婷| 色天使色偷偷av一区二区| 亚洲一区中文日韩| 在线播放国产精品二区一二区四区| 日本欧美一区二区三区乱码| 日韩一二三区视频| 国产精品一二三四| 亚洲视频一二三| 轻轻草成人在线| 久久嫩草精品久久久久| 成人午夜视频网站| 亚洲综合色噜噜狠狠| 51精品久久久久久久蜜臀| 国产在线一区二区| 国产精品无码永久免费888| 色偷偷久久一区二区三区| 午夜成人免费电影| 久久蜜桃av一区二区天堂| 日韩视频中午一区| 日韩国产欧美在线播放| 久久一夜天堂av一区二区三区| 成人av电影在线观看| 一区二区三区精品视频在线| 欧美一区二区三区视频免费| 国产一区二区三区高清播放| 成人欧美一区二区三区黑人麻豆| 在线视频一区二区免费| 精品一区二区三区在线观看国产| 日本一区二区三区国色天香| 欧美电视剧在线看免费| 亚洲成人黄色影院| 久久奇米777| 欧美伊人久久久久久久久影院| 久久99久久99| 亚洲日本青草视频在线怡红院| 日韩一区二区高清| 99国产精品国产精品毛片| 奇米精品一区二区三区在线观看| 91小视频在线免费看| 日本成人在线电影网| 亚洲欧洲日韩av| 欧美v国产在线一区二区三区| 色综合天天视频在线观看 | 久草这里只有精品视频| 国产精品你懂的| 日韩一区二区麻豆国产| 欧美激情艳妇裸体舞| 国产成人免费视| 麻豆成人久久精品二区三区小说| 依依成人综合视频| 久久精品视频网|