UM10462 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2016. All rights reserved.
User manual Rev. 5.5 — 21 December 2016 516 of 523
NXP Semiconductors
UM10462
Chapter 25: Supplementary information
10.5 USB API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
10.5.1 __WORD_BYTE. . . . . . . . . . . . . . . . . . . . . . 172
10.5.2 _BM_T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
10.5.3
_CDC_ABSTRACT_CONTROL_MANAGEMENT
_DESCRIPTOR . . . . . . . . . . . . . . . . . . . . . . 173
10.5.4 _CDC_CALL_MANAGEMENT_DESCRIPTOR . .
173
10.5.5 _CDC_HEADER_DESCRIPTOR . . . . . . . . . 173
10.5.6 _CDC_LINE_CODING . . . . . . . . . . . . . . . . . 173
10.5.7 _CDC_UNION_1SLAVE_DESCRIPTOR . . . 174
10.5.8 _CDC_UNION_DESCRIPTOR. . . . . . . . . . . 174
10.5.9 _DFU_STATUS. . . . . . . . . . . . . . . . . . . . . . . 174
10.5.10 _HID_DESCRIPTOR . . . . . . . . . . . . . . . . . . 174
10.5.11
_HID_DESCRIPTOR::_HID_DESCRIPTOR_LIS
T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
10.5.12 _HID_REPORT_T . . . . . . . . . . . . . . . . . . . . 175
10.5.13 _MSC_CBW . . . . . . . . . . . . . . . . . . . . . . . . . 176
10.5.14 _MSC_CSW . . . . . . . . . . . . . . . . . . . . . . . . . 176
10.5.15 _REQUEST_TYPE. . . . . . . . . . . . . . . . . . . . 176
10.5.16 _USB_COMMON_DESCRIPTOR . . . . . . . . 176
10.5.17 _USB_CORE_DESCS_T. . . . . . . . . . . . . . . 177
10.5.18 _USB_DEVICE_QUALIFIER_DESCRIPTOR 177
10.5.19 _USB_DFU_FUNC_DESCRIPTOR. . . . . . . 177
10.5.20 _USB_INTERFACE_DESCRIPTOR . . . . . . 178
10.5.21 _USB_OTHER_SPEED_CONFIGURATION 178
10.5.22 _USB_SETUP_PACKET . . . . . . . . . . . . . . . 179
10.5.23 _USB_STRING_DESCRIPTOR. . . . . . . . . . 179
10.5.24 _WB_T. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
10.5.25 USBD_API . . . . . . . . . . . . . . . . . . . . . . . . . . 180
10.5.26 USBD_API_INIT_PARAM . . . . . . . . . . . . . . 181
10.5.27 USBD_CDC_API . . . . . . . . . . . . . . . . . . . . . 184
10.5.28 USBD_CDC_INIT_PARAM . . . . . . . . . . . . . 185
10.5.29 USBD_CORE_API. . . . . . . . . . . . . . . . . . . . 194
10.5.30 USBD_DFU_API . . . . . . . . . . . . . . . . . . . . . 197
10.5.31 USBD_DFU_INIT_PARAM . . . . . . . . . . . . . 198
10.5.32 USBD_HID_API. . . . . . . . . . . . . . . . . . . . . . 200
10.5.33 USBD_HID_INIT_PARAM . . . . . . . . . . . . . . 201
10.5.34 USBD_HW_API . . . . . . . . . . . . . . . . . . . . . . 207
10.5.35 USBD_MSC_API . . . . . . . . . . . . . . . . . . . . . 215
10.5.36 USBD_MSC_INIT_PARAM . . . . . . . . . . . . . 216
Chapter 11: LPC11U3x/2x/1x USB2.0 device controller
11.1 How to read this chapter. . . . . . . . . . . . . . . . 221
11.2 Basic configuration . . . . . . . . . . . . . . . . . . . 221
11.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
11.4 General description. . . . . . . . . . . . . . . . . . . . 221
11.4.1 USB software interface. . . . . . . . . . . . . . . . . 223
11.4.2 Fixed endpoint configuration. . . . . . . . . . . . . 223
11.4.3 SoftConnect . . . . . . . . . . . . . . . . . . . . . . . . . 223
11.4.4 Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
11.4.5 Suspend and resume . . . . . . . . . . . . . . . . . . 224
11.4.6 Frame toggle output . . . . . . . . . . . . . . . . . . . 224
11.4.7 Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
11.5 Pin description. . . . . . . . . . . . . . . . . . . . . . . . 225
11.6 Register description . . . . . . . . . . . . . . . . . . . 225
11.6.1 USB Device Command/Status register
(DEVCMDSTAT). . . . . . . . . . . . . . . . . . . . . . 226
11.6.2 USB Info register (INFO) . . . . . . . . . . . . . . . 228
11.6.3 USB EP Command/Status List start address
(EPLISTSTART) . . . . . . . . . . . . . . . . . . . . . . 228
11.6.4 USB Data buffer start address
(DATABUFSTART) . . . . . . . . . . . . . . . . . . . . 229
11.6.5 USB Link Power Management register
(LPM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
11.6.6 USB Endpoint skip (EPSKIP) . . . . . . . . . . . . 230
11.6.7 USB Endpoint Buffer in use (EPINUSE) . . . 230
11.6.8 USB Endpoint Buffer Configuration
(EPBUFCFG). . . . . . . . . . . . . . . . . . . . . . . . 230
11.6.9 USB interrupt status register (INTSTAT) . . . 231
11.6.10 USB interrupt enable register (INTEN) . . . . 232
11.6.11 USB set interrupt status register
(INTSETSTAT) . . . . . . . . . . . . . . . . . . . . . . . 233
11.6.12 USB interrupt routing register
(INTROUTING) . . . . . . . . . . . . . . . . . . . . . . 233
11.6.13 USB Endpoint toggle (EPTOGGLE). . . . . . . 233
11.7 Functional description . . . . . . . . . . . . . . . . . 234
11.7.1 Endpoint command/status list . . . . . . . . . . . 234
11.7.2 Control endpoint 0 . . . . . . . . . . . . . . . . . . . . 237
11.7.3 Generic endpoint: single-buffering. . . . . . . . 238
11.7.4 Generic endpoint: double-buffering . . . . . . . 239
11.7.5 Special cases. . . . . . . . . . . . . . . . . . . . . . . . 239
11.7.5.1 Use of the Active bit. . . . . . . . . . . . . . . . . . . 239
11.7.5.2 Generation of a STALL handshake . . . . . . . 239
11.7.5.3 Clear Feature (endpoint halt). . . . . . . . . . . . 239
11.7.5.4 Set configuration . . . . . . . . . . . . . . . . . . . . . 240
11.7.6 USB wake-up. . . . . . . . . . . . . . . . . . . . . . . . 240
11.7.6.1 Waking up from Deep-sleep and Power-down
modes on USB activity. . . . . . . . . . . . . . . . . 240
11.7.6.2 Remote wake-up . . . . . . . . . . . . . . . . . . . . . 240
Chapter 12: LPC11U3x/2x/1x USART
12.1 How to read this chapter. . . . . . . . . . . . . . . . 242
12.2 Basic configuration . . . . . . . . . . . . . . . . . . . 242
12.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
12.4 Pin description. . . . . . . . . . . . . . . . . . . . . . . . 242
12.5 Register description . . . . . . . . . . . . . . . . . . . 243
12.5.1 USART Receiver Buffer Register (when
DLAB = 0, Read Only) . . . . . . . . . . . . . . . . . 244
12.5.2 USART Transmitter Holding Register (when
DLAB = 0, Write Only) . . . . . . . . . . . . . . . . . 244
12.5.3 USART Divisor Latch LSB and MSB Registers
(when DLAB = 1) . . . . . . . . . . . . . . . . . . . . . 245
12.5.4 USART Interrupt Enable Register (when
DLAB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . 245
12.5.5 USART Interrupt Identification Register (Read
Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246