USB Mouse (relative) example for mbed NXP LPC11U24 beta

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers USBEndpoints_LPC11U.h Source File

USBEndpoints_LPC11U.h

00001 /* USBEndpoints_LPC11U.h */
00002 /* Endpoint configuration for LPC11U */
00003 /* Copyright (c) 2011 ARM Limited. All rights reserved. */
00004 
00005 #define NUMBER_OF_LOGICAL_ENDPOINTS (5)
00006 #define NUMBER_OF_PHYSICAL_ENDPOINTS (NUMBER_OF_LOGICAL_ENDPOINTS * 2)
00007 
00008 /* Define physical endpoint numbers */
00009 
00010 /*      Endpoint    No.     Type(s)       MaxPacket   DoubleBuffer  */
00011 /*      ----------------    ------------  ----------  ---           */
00012 #define EP0OUT      (0)  /* Control       64          No            */
00013 #define EP0IN       (1)  /* Control       64          No            */
00014 #define EP1OUT      (2)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00015 #define EP1IN       (3)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00016 #define EP2OUT      (4)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00017 #define EP2IN       (5)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00018 #define EP3OUT      (6)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00019 #define EP3IN       (7)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00020 #define EP4OUT      (8)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00021 #define EP4IN       (9)  /* Int/Bulk/Iso  64/64/1023  Yes           */
00022 
00023 /* Maximum Packet sizes */
00024 
00025 #define MAX_PACKET_SIZE_EP0 (64)
00026 #define MAX_PACKET_SIZE_EP1 (64) /* Int/Bulk */
00027 #define MAX_PACKET_SIZE_EP2 (64) /* Int/Bulk */
00028 #define MAX_PACKET_SIZE_EP3 (64) /* Int/Bulk */
00029 #define MAX_PACKET_SIZE_EP4 (64) /* Int/Bulk */
00030 
00031 #define MAX_PACKET_SIZE_EP1_ISO (1023) /* Isochronous */
00032 #define MAX_PACKET_SIZE_EP2_ISO (1023) /* Isochronous */
00033 #define MAX_PACKET_SIZE_EP3_ISO (1023) /* Isochronous */
00034 #define MAX_PACKET_SIZE_EP4_ISO (1023) /* Isochronous */
00035 
00036 /* Generic endpoints - intended to be portable accross devices */
00037 /* and be suitable for simple USB devices. */
00038 
00039 /* Bulk endpoint */
00040 #define EPBULK_OUT  (EP2OUT)
00041 #define EPBULK_IN   (EP2IN)
00042 /* Interrupt endpoint */
00043 #define EPINT_OUT   (EP1OUT)
00044 #define EPINT_IN    (EP1IN)
00045 /* Isochronous endpoint */
00046 #define EPISO_OUT   (EP3OUT)
00047 #define EPISO_IN    (EP3IN)
00048 
00049 #define MAX_PACKET_SIZE_EPBULK  (MAX_PACKET_SIZE_EP2)
00050 #define MAX_PACKET_SIZE_EPINT   (MAX_PACKET_SIZE_EP1)
00051 #define MAX_PACKET_SIZE_EPISO   (MAX_PACKET_SIZE_EP3_ISO)