*/\r
#define USB_MODE_NONE 0\r
\r
- #if defined(USB_CAN_BE_DEVICE) || defined(__DOXYGEN__)\r
- /** Mode mask for the \ref USB_CurrentMode global and the \ref USB_Init() function. This indicates that the\r
- * USB interface is or should be initialized in the USB device mode.\r
- */\r
- #define USB_MODE_DEVICE 1\r
- #endif\r
+ /** Mode mask for the \ref USB_CurrentMode global and the \ref USB_Init() function. This indicates that the\r
+ * USB interface is or should be initialized in the USB device mode.\r
+ */\r
+ #define USB_MODE_DEVICE 1\r
\r
#if defined(USB_CAN_BE_HOST) || defined(__DOXYGEN__)\r
/** Mode mask for the \ref USB_CurrentMode global and the \ref USB_Init() function. This indicates that the\r
#endif\r
\r
/** Detaches the device from the USB bus. This has the effect of removing the device from any\r
- * host if, ceasing USB communications. If no host is present, this prevents any host from\r
+ * attached host, ceasing USB communications. If no host is present, this prevents any host from\r
* enumerating the device once attached until \ref USB_Attach() is called.\r
*/\r
#define USB_Detach() MACROS{ UDCON |= (1 << DETACH); }MACROE\r
* Calling this function when the USB interface is already initialized will cause a complete USB\r
* interface reset and re-enumeration.\r
*\r
- * \param Mode This is a mask indicating what mode the USB interface is to be initialized to.\r
- * Valid mode masks are \ref USB_MODE_DEVICE, \ref USB_MODE_HOST or \ref USB_MODE_UID.\r
+ * \param[in] Mode This is a mask indicating what mode the USB interface is to be initialized to.\r
+ * Valid mode masks are \ref USB_MODE_DEVICE, \ref USB_MODE_HOST or \ref USB_MODE_UID.\r
*\r
- * \param Options Mask indicating the options which should be used when initializing the USB\r
- * interface to control the USB interface's behaviour. This should be comprised of\r
- * a USB_OPT_REG_* mask to control the regulator, a USB_OPT_*_PLL mask to control the\r
- * PLL, and a USB_DEVICE_OPT_* mask (when the device mode is enabled) to set the device\r
- * mode speed.\r
+ * \param[in] Options Mask indicating the options which should be used when initializing the USB\r
+ * interface to control the USB interface's behaviour. This should be comprised of\r
+ * a USB_OPT_REG_* mask to control the regulator, a USB_OPT_*_PLL mask to control the\r
+ * PLL, and a USB_DEVICE_OPT_* mask (when the device mode is enabled) to set the device\r
+ * mode speed.\r
*\r
* \note To reduce the FLASH requirements of the library if only device or host mode is required, \r
* this can be statically set via defining the token USB_DEVICE_ONLY for device mode or \r
* changed in value.\r
*/\r
extern volatile uint8_t USB_CurrentMode;\r
+ #elif defined(USB_HOST_ONLY)\r
+ #define USB_CurrentMode USB_MODE_HOST\r
+ #elif defined(USB_DEVICE_ONLY)\r
+ #define USB_CurrentMode USB_MODE_DEVICE\r
#endif\r
\r
#if !defined(USE_STATIC_OPTIONS) || defined(__DOXYGEN__)\r
* changed in value.\r
*/\r
extern volatile uint8_t USB_Options;\r
+ #elif defined(USE_STATIC_OPTIONS)\r
+ #define USB_Options USE_STATIC_OPTIONS\r
#endif\r
\r
/* Private Interface - For use in library only: */\r
#define USB_CLK_Freeze() MACROS{ USBCON |= (1 << FRZCLK); }MACROE\r
#define USB_CLK_Unfreeze() MACROS{ USBCON &= ~(1 << FRZCLK); }MACROE\r
\r
- #define USB_Interface_Enable() MACROS{ USBCON |= (1 << USBE); }MACROE\r
- #define USB_Interface_Disable() MACROS{ USBCON &= ~(1 << USBE); }MACROE\r
- #define USB_Interface_Reset() MACROS{ uint8_t Temp = USBCON; USBCON = (Temp & ~(1 << USBE)); \\r
+ #define USB_Controller_Enable() MACROS{ USBCON |= (1 << USBE); }MACROE\r
+ #define USB_Controller_Disable() MACROS{ USBCON &= ~(1 << USBE); }MACROE\r
+ #define USB_Controller_Reset() MACROS{ const uint8_t Temp = USBCON; USBCON = (Temp & ~(1 << USBE)); \\r
USBCON = (Temp | (1 << USBE)); }MACROE\r
\r
/* Inline Functions: */\r