00001 /********************************************************************* 00002 * 00003 * Microchip USB C18 Firmware Version 1.0 00004 * 00005 ********************************************************************* 00006 * FileName: usbcfg.h 00007 * Dependencies: See INCLUDES section below 00008 * Processor: PIC18 00009 * Compiler: C18 2.30.01+ 00010 * Company: Microchip Technology, Inc. 00011 * 00012 * Software License Agreement 00013 * 00014 * The software supplied herewith by Microchip Technology Incorporated 00015 * (the “Company”) for its PICmicro® Microcontroller is intended and 00016 * supplied to you, the Company’s customer, for use solely and 00017 * exclusively on Microchip PICmicro Microcontroller products. The 00018 * software is owned by the Company and/or its supplier, and is 00019 * protected under applicable copyright laws. All rights are reserved. 00020 * Any use in violation of the foregoing restrictions may subject the 00021 * user to criminal sanctions under applicable laws, as well as to 00022 * civil liability for the breach of the terms and conditions of this 00023 * license. 00024 * 00025 * THIS SOFTWARE IS PROVIDED IN AN “AS IS” CONDITION. NO WARRANTIES, 00026 * WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED 00027 * TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 00028 * PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. THE COMPANY SHALL NOT, 00029 * IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL OR 00030 * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. 00031 * 00032 ********************************************************************/ 00033 00034 #ifndef USBCFG_H 00035 #define USBCFG_H 00036 00037 /** D E F I N I T I O N S *******************************************/ 00038 #define EP0_BUFF_SIZE 8 // 8, 16, 32, or 64 00039 #define MAX_NUM_INT 1 // For tracking Alternate Setting 00040 00041 /* Parameter definitions are defined in usbdrv.h */ 00042 #define MODE_PP _PPBM0 00043 #define UCFG_VAL _PUEN|_TRINT|_FS|MODE_PP 00044 00045 #define USE_SELF_POWER_SENSE_IO 00046 #define USE_USB_BUS_SENSE_IO 00047 00048 /** D E V I C E C L A S S U S A G E *******************************/ 00049 #define USB_USE_CDC 00050 00051 /* 00052 * MUID = Microchip USB Class ID 00053 * Used to identify which of the USB classes owns the current 00054 * session of control transfer over EP0 00055 */ 00056 #define MUID_NULL 0 00057 #define MUID_USB9 1 00058 #define MUID_HID 2 00059 #define MUID_CDC 3 00060 #define MUID_MSD 4 00061 00062 /** E N D P O I N T S A L L O C A T I O N **************************/ 00063 /* 00064 * See usbmmap.c for an explanation of how the endpoint allocation works 00065 */ 00066 00067 /* CDC */ 00068 #define CDC_COMM_INTF_ID 0x00 00069 #define CDC_COMM_UEP UEP2 00070 #define CDC_INT_BD_IN ep2Bi 00071 #define CDC_INT_EP_SIZE 8 00072 00073 #define CDC_DATA_INTF_ID 0x01 00074 #define CDC_DATA_UEP UEP3 00075 #define CDC_BULK_BD_OUT ep3Bo 00076 #define CDC_BULK_OUT_EP_SIZE 64 00077 #define CDC_BULK_BD_IN ep3Bi 00078 #define CDC_BULK_IN_EP_SIZE 64 00079 00080 #define MAX_EP_NUMBER 3 // UEP3 00081 00082 #endif //USBCFG_H