\r
/* Preprocessor Checks and Defines: */\r
#if !defined(F_CLOCK)\r
- #error F_CLOCK is not defined. You must device F_CLOCK to the frequency of the unprescaled input clock in your project makefile.\r
+ #error F_CLOCK is not defined. You must define F_CLOCK to the frequency of the unprescaled input clock in your project makefile.\r
#endif\r
\r
#if (F_CLOCK == 8000000)\r
- #if (defined(__AVR_AT90USB82__) || defined(__AVR_AT90USB162__))\r
+ #if (defined(__AVR_AT90USB82__) || defined(__AVR_AT90USB162__) || \\r
+ defined(__AVR_ATMEGA8U2__) || defined(__AVR_ATMEGA16U2__))\r
#define USB_PLL_PSC 0\r
#elif (defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__))\r
#define USB_PLL_PSC 0\r
#define USB_PLL_PSC ((1 << PLLP1) | (1 << PLLP0))\r
#endif\r
#elif (F_CLOCK == 16000000)\r
- #if (defined(__AVR_AT90USB82__) || defined(__AVR_AT90USB162__))\r
+ #if (defined(__AVR_AT90USB82__) || defined(__AVR_AT90USB162__) || \\r
+ defined(__AVR_ATMEGA8U2__) || defined(__AVR_ATMEGA16U2__))\r
#define USB_PLL_PSC (1 << PLLP0)\r
#elif (defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__))\r
#define USB_PLL_PSC (1 << PINDIV)\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
- * USB interface is or should be initialized in the USB host mode.\r
- *\r
- * \note This token is not available on AVR models which do not support host mode.\r
- */\r
- #define USB_MODE_HOST 2\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 host mode.\r
+ */\r
+ #define USB_MODE_HOST 2\r
\r
#if defined(USB_CAN_BE_BOTH) || defined(__DOXYGEN__)\r
/** Mode mask for the the \ref USB_Init() function. This indicates that the USB interface should be\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
\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{ uint8_t Temp = USBCON; USBCON = (Temp & ~(1 << USBE)); \\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