* \return Boolean true if the USB communications have been suspended by the host, false otherwise.\r
*/\r
static inline bool USB_Device_IsUSBSuspended(void);\r
+ \r
+ /** Enables the device mode Start Of Frame events. When enabled, this causes the\r
+ * \ref EVENT_USB_Device_StartOfFrame() event to fire once per millisecond, synchronised to the USB bus,\r
+ * at the start of each USB frame when enumerated in device mode.\r
+ */\r
+ static inline bool USB_Device_EnableSOFEvents(void);\r
+ \r
+ /** Disables the device mode Start Of Frame events. When disabled, this stop the firing of the\r
+ * \ref EVENT_USB_Device_StartOfFrame() event when enumerated in device mode.\r
+ */\r
+ static inline bool USB_Device_DisableSOFEvents(void);\r
#else\r
#define USB_Device_SendRemoteWakeup() MACROS{ UDCON |= (1 << RMWKUP); }MACROE\r
\r
#define USB_Device_IsRemoteWakeupSent() ((UDCON & (1 << RMWKUP)) ? false : true)\r
\r
#define USB_Device_IsUSBSuspended() ((UDINT & (1 << SUSPI)) ? true : false)\r
+ \r
+ #define USB_Device_EnableSOFEvents() MACROS{ USB_INT_Enable(USB_INT_SOFI); }MACROE\r
+\r
+ #define USB_Device_DisableSOFEvents() MACROS{ USB_INT_Disable(USB_INT_SOFI); }MACROE\r
#endif\r
\r
/* Type Defines: */\r