* \return The currently selected endpoint's direction, as a ENDPOINT_DIR_* mask.\r
*/\r
static inline uint8_t Endpoint_GetEndpointDirection(void);\r
+\r
+ /** Sets the direction of the currently selected endpoint.\r
+ *\r
+ * \param DirectionMask New endpoint direction, as a ENDPOINT_DIR_* mask.\r
+ */\r
+ static inline void Endpoint_SetEndpointDirection(uint8_t DirectionMask);\r
#else\r
#if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR) || defined(__DOXYGEN__)\r
#define Endpoint_BytesInEndpoint() UEBCX\r
#define Endpoint_ResetDataToggle() MACROS{ UECONX |= (1 << RSTDT); }MACROE\r
\r
#define Endpoint_GetEndpointDirection() (UECFG0X & ENDPOINT_DIR_IN)\r
+ \r
+ #define Endpoint_SetEndpointDirection(dir) MACROS{ UECFG0X = ((UECFG0X & ~ENDPOINT_DIR_IN) | dir); }MACROE\r
#endif\r
\r
/* Enums: */\r