Skip to content

Commit e4d4963

Browse files
committed
LPC11U35 support for USBDevice and mbed-rtos
Added support for the EA LPC11U35 QuickStart Board to USBDevice an mbed-rtos. Also fixed several string-related bugs in USBDevice.
1 parent 8ef99f8 commit e4d4963

File tree

5 files changed

+15
-7
lines changed

5 files changed

+15
-7
lines changed

libraries/USBDevice/USBDevice/USBDevice.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -926,7 +926,7 @@ uint8_t * USBDevice::stringLangidDesc() {
926926
static uint8_t stringLangidDescriptor[] = {
927927
0x04, /*bLength*/
928928
STRING_DESCRIPTOR, /*bDescriptorType 0x03*/
929-
0x09,0x00, /*bString Lang ID - 0x009 - English*/
929+
0x09,0x04, /*bString Lang ID - 0x0409 - English*/
930930
};
931931
return stringLangidDescriptor;
932932
}

libraries/USBDevice/USBDevice/USBDevice_Types.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949

5050
/* Descriptors */
5151
#define DESCRIPTOR_TYPE(wValue) (wValue >> 8)
52-
#define DESCRIPTOR_INDEX(wValue) (wValue & 0xf)
52+
#define DESCRIPTOR_INDEX(wValue) (wValue & 0xff)
5353

5454
typedef struct {
5555
struct {

libraries/USBDevice/USBDevice/USBHAL_LPC11U.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1717
*/
1818

19-
#if defined(TARGET_LPC11U24) || defined(TARGET_LPC1347)
19+
#if defined(TARGET_LPC11U24) || defined(TARGET_LPC11U35_401) || defined(TARGET_LPC1347)
2020

2121
#if defined(TARGET_LPC1347)
2222
#define USB_IRQ USB_IRQ_IRQn
23-
#elif defined(TARGET_LPC11U24)
23+
#elif defined(TARGET_LPC11U24) || defined(TARGET_LPC11U35_401)
2424
#define USB_IRQ USB_IRQn
2525
#endif
2626

@@ -145,6 +145,11 @@ USBHAL::USBHAL(void) {
145145
epCallback[6] = &USBHAL::EP4_OUT_callback;
146146
epCallback[7] = &USBHAL::EP4_IN_callback;
147147

148+
#if defined(TARGET_LPC11U35_401)
149+
// USB_VBUS input with pull-down
150+
LPC_IOCON->PIO0_3 = 0x00000009;
151+
#endif
152+
148153
// nUSB_CONNECT output
149154
LPC_IOCON->PIO0_6 = 0x00000001;
150155

libraries/rtos/rtx/RTX_CM_lib.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,9 @@ osThreadDef_t os_thread_def_main = {(os_pthread)main, osPriorityNormal, 0, NULL}
205205
#elif TARGET_LPC11U24
206206
#define INITIAL_SP (0x10002000UL)
207207

208+
#elif TARGET_LPC11U35_401
209+
#define INITIAL_SP (0x10002000UL)
210+
208211
#elif TARGET_LPC1114
209212
#define INITIAL_SP (0x10001000UL)
210213

libraries/rtos/rtx/RTX_Conf_CM.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
#ifndef OS_TASKCNT
5252
# if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC4088) || defined(TARGET_LPC1347)
5353
# define OS_TASKCNT 14
54-
# elif defined(TARGET_LPC11U24) || (TARGET_LPC1114) || (TARGET_LPC812) || defined(TARGET_KL25Z)
54+
# elif defined(TARGET_LPC11U24) || defined(TARGET_LPC11U35_401) || (TARGET_LPC1114) || (TARGET_LPC812) || defined(TARGET_KL25Z)
5555
# define OS_TASKCNT 6
5656
# endif
5757
#endif
@@ -60,7 +60,7 @@
6060
#ifndef OS_SCHEDULERSTKSIZE
6161
# if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC4088) || defined(TARGET_LPC1347)
6262
# define OS_SCHEDULERSTKSIZE 256
63-
# elif defined(TARGET_LPC11U24) || (TARGET_LPC1114) || (TARGET_LPC812) || defined(TARGET_KL25Z)
63+
# elif defined(TARGET_LPC11U24) || defined(TARGET_LPC11U35_401) || (TARGET_LPC1114) || (TARGET_LPC812) || defined(TARGET_KL25Z)
6464
# define OS_SCHEDULERSTKSIZE 128
6565
# endif
6666
#endif
@@ -107,7 +107,7 @@
107107
# elif defined(TARGET_LPC1347)
108108
# define OS_CLOCK 72000000
109109

110-
# elif defined(TARGET_LPC11U24) || (TARGET_LPC1114) || defined(TARGET_KL25Z)
110+
# elif defined(TARGET_LPC11U24) || defined(TARGET_LPC11U35_401) || (TARGET_LPC1114) || defined(TARGET_KL25Z)
111111
# define OS_CLOCK 48000000
112112
#
113113
# elif defined(TARGET_LPC812)

0 commit comments

Comments
 (0)