42 #ifndef __USBCONTROLLER_H__
43 #define __USBCONTROLLER_H__
46 #include "../../../Common/Common.h"
50 #if defined(__cplusplus)
55 #if !defined(__INCLUDE_FROM_USB_DRIVER)
56 #error Do not include this file directly. Include lpcroot/libraries/LPCUSBlib/Drivers/USB/USB.h instead.
65 #define ENDPOINT_DIR_MASK 0x80
70 #define ENDPOINT_DIR_OUT 0x00
75 #define ENDPOINT_DIR_IN 0x80
83 #define EP_TYPE_MASK 0x03
89 #define EP_TYPE_CONTROL 0x00
95 #define EP_TYPE_ISOCHRONOUS 0x01
101 #define EP_TYPE_BULK 0x02
107 #define EP_TYPE_INTERRUPT 0x03
114 #if defined(USB_CAN_BE_HOST) || defined(__DOXYGEN__)
122 #if defined(USB_CAN_BE_DEVICE) || defined(__DOXYGEN__)
138 #define USB_OPT_REG_DISABLED (1 << 1)
146 #define USB_OPT_REG_ENABLED (0 << 1)
152 #define USB_OPT_MANUAL_PLL (1 << 2)
158 #define USB_OPT_AUTO_PLL (0 << 2)
161 #if !defined(USB_STREAM_TIMEOUT_MS) || defined(__DOXYGEN__)
169 #define USB_STREAM_TIMEOUT_MS 100
173 #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR) || \
187 return (USBSTA & (1 << VBUS)) ?
true :
false;
233 void USB_Init(uint8_t corenum, uint8_t mode);
269 #if !defined(USE_STATIC_OPTIONS) || defined(__DOXYGEN__)
277 #elif defined(USE_STATIC_OPTIONS)
278 #define USB_Options USE_STATIC_OPTIONS
295 #if !defined(__DOXYGEN__)
297 #if defined(__INCLUDE_FROM_USB_CONTROLLER_C)
298 #if defined(USB_CAN_BE_DEVICE)
303 #if defined(USB_CAN_BE_HOST)
313 static inline
void USB_PLL_On(
void)
319 static inline
void USB_PLL_Off(
void)
325 static inline
bool USB_PLL_IsReady(
void)
333 static inline
void USB_REG_On(
void)
339 static inline
void USB_REG_Off(
void)
345 static inline
void USB_OTGPAD_On(
void)
351 static inline
void USB_OTGPAD_Off(
void)
357 static inline
void USB_CLK_Freeze(
void)
363 static inline
void USB_CLK_Unfreeze(
void)
369 static inline
void USB_Controller_Enable(
void)
375 static inline
void USB_Controller_Disable(
void)
381 static inline
void USB_Controller_Reset(
void)
384 #if defined(USB_CAN_BE_BOTH)
388 static inline uint8_t USB_GetUSBModeFromUID(
void)
403 #if defined(__cplusplus)