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

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

?? usbconfig-prototype.h

?? 一個紅外分析儀的固件程序。使用的AVRUSB硬件(ATMEGA8)。
?? 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一区二区三区免费野_久草精品视频
欧美日韩一级视频| 中文字幕欧美日韩一区| 免费高清在线一区| 日韩视频在线你懂得| 精久久久久久久久久久| 中文字幕二三区不卡| 97se亚洲国产综合自在线| 亚洲综合激情网| 欧美一区二区美女| 国产麻豆欧美日韩一区| 亚洲国产成人私人影院tom| 91久久久免费一区二区| 日韩av一区二区在线影视| 精品不卡在线视频| 99综合电影在线视频| 亚洲午夜久久久久久久久久久| 欧美一区二区高清| 国产精品一区免费视频| 亚洲美女区一区| 欧美一区二区女人| 成人中文字幕电影| 亚洲图片自拍偷拍| 欧美www视频| 97久久久精品综合88久久| 三级一区在线视频先锋 | 日韩极品在线观看| 精品国产乱码久久久久久牛牛| 国产成人精品影视| 一个色综合网站| 欧美一区二区精品| 成人爱爱电影网址| 亚洲一区二区综合| 久久精品亚洲国产奇米99| 91黄色免费观看| 久久爱另类一区二区小说| 1024成人网色www| 日韩限制级电影在线观看| av电影在线观看不卡| 日韩av电影天堂| 中文字幕色av一区二区三区| 欧美一区二区三区四区视频 | 成人精品电影在线观看| 性感美女极品91精品| 国产亚洲一区二区三区四区 | 欧美日韩国产影片| 成人一级片在线观看| 日韩av一级电影| 亚洲人成精品久久久久久| 亚洲精品在线观| 欧美性一二三区| 国产91对白在线观看九色| 视频在线观看91| 国产精品传媒视频| 日韩久久久久久| 欧美丝袜第三区| 成人激情小说网站| 久久精品国产亚洲高清剧情介绍| 亚洲乱码国产乱码精品精可以看| 精品成人在线观看| 7777女厕盗摄久久久| 97久久精品人人澡人人爽| 精品国产一区a| 欧美日韩视频第一区| 波多野结衣视频一区| 麻豆91小视频| 亚洲国产成人高清精品| 国产精品久久久久久一区二区三区| 日韩欧美精品在线视频| 精品视频资源站| 色综合久久中文字幕综合网 | 成人av在线网| 国产呦精品一区二区三区网站| 亚洲成人精品一区| 亚洲日韩欧美一区二区在线| 国产亚洲人成网站| 精品欧美久久久| 91精品国产91综合久久蜜臀| 在线观看不卡一区| 91一区一区三区| 成人小视频免费在线观看| 激情久久五月天| 日韩电影免费在线| 亚洲精选视频免费看| 国产欧美精品一区aⅴ影院| 精品99一区二区| 日韩免费看网站| 欧美一区二区三区视频在线| 欧美丰满嫩嫩电影| 欧美日韩一区二区在线观看| 在线观看av一区| 在线一区二区视频| 色婷婷亚洲综合| 91视频一区二区三区| 99久久免费精品| eeuss影院一区二区三区| 成人免费福利片| 波多野结衣中文字幕一区二区三区| 国产一区视频在线看| 激情六月婷婷久久| 国产在线播放一区| 激情综合亚洲精品| 国产一区二区三区四区五区入口 | 白白色亚洲国产精品| 成人免费电影视频| 9i在线看片成人免费| 95精品视频在线| 色欧美乱欧美15图片| 99国产精品久久久久久久久久| 成人av中文字幕| 99国产精品视频免费观看| 91猫先生在线| 在线视频一区二区免费| 欧美性色黄大片| 欧美肥大bbwbbw高潮| 欧美一区二区三区人| 日韩欧美国产小视频| 精品美女一区二区| 久久久91精品国产一区二区三区| 久久久久久久久伊人| 中文字幕精品一区| 亚洲美女精品一区| 午夜视频一区二区三区| 日本伊人精品一区二区三区观看方式| 青青草伊人久久| 久久成人久久爱| 国产精品亚洲视频| 不卡av电影在线播放| 在线观看一区二区精品视频| 欧美日韩免费观看一区二区三区 | 在线观看91精品国产入口| 欧美人与性动xxxx| 精品国产凹凸成av人网站| 日本一区二区综合亚洲| 亚洲欧美韩国综合色| 亚洲va欧美va天堂v国产综合| 奇米影视在线99精品| 国产很黄免费观看久久| 亚洲色欲色欲www| 一区二区成人在线视频| 奇米色一区二区| 国产mv日韩mv欧美| 色天使久久综合网天天| 欧美一区二区私人影院日本| 久久免费精品国产久精品久久久久 | 国产成人精品一区二| 99视频精品在线| 欧美色国产精品| 亚洲精品在线免费观看视频| 国产精品久久夜| 亚洲午夜精品在线| 久久99久国产精品黄毛片色诱| 成人免费视频免费观看| 在线免费观看不卡av| 精品少妇一区二区三区在线视频| 国产精品视频一二三区| 亚洲国产另类av| 国产精品亚洲成人| 色欧美88888久久久久久影院| 日韩手机在线导航| 中文字幕一区二区5566日韩| 日韩电影在线免费看| 成人在线视频首页| 在线不卡中文字幕| 国产精品免费免费| 日韩精品视频网站| 成人免费黄色大片| 91精品在线麻豆| 国产精品久久99| 蜜桃在线一区二区三区| 成人动漫在线一区| 日韩一区二区在线观看| 国产欧美日韩精品a在线观看| 亚洲精品自拍动漫在线| 国内精品国产成人国产三级粉色 | 国产精品全国免费观看高清| 亚洲成人av在线电影| 成人一区在线观看| 91麻豆精品国产综合久久久久久| 国产日韩影视精品| 日韩极品在线观看| 色呦呦国产精品| 久久精品水蜜桃av综合天堂| 午夜久久久影院| 99久久婷婷国产综合精品| 精品少妇一区二区三区日产乱码| 亚洲欧美日韩中文播放| 国产乱理伦片在线观看夜一区 | 欧美日韩国产大片| 国产精品不卡一区二区三区| 美女免费视频一区二区| 日本道免费精品一区二区三区| 国产视频一区不卡| 美女视频免费一区| 在线一区二区三区四区五区| 国产欧美日韩精品a在线观看| 美女一区二区在线观看| 欧美视频一区在线| 亚洲啪啪综合av一区二区三区| 韩国毛片一区二区三区| 88在线观看91蜜桃国自产|