Xmega Application Note


usb_task.h

Go to the documentation of this file.
00001 
00002 /* This file has been prepared for Doxygen automatic documentation generation.*/
00048 #ifndef _USB_TASK_H_
00049 #define _USB_TASK_H_
00050 
00051 /****************************** DEFINES ***************************************/
00052 
00053 #define EVT_USB_POWERED               1         /* USB plugged */
00054 #define EVT_USB_UNPOWERED             2         /* USB un-plugged */
00055 #define EVT_USB_DEVICE_FUNCTION       3         /* USB in device */
00056 #define EVT_USB_HOST_FUNCTION         4         /* USB in host */
00057 #define EVT_USB_SUSPEND               5         /* USB suspend */
00058 #define EVT_USB_WAKE_UP               6         /* USB wake up */
00059 #define EVT_USB_RESUME                7         /* USB resume */
00060 #define EVT_USB_RESET                 8         /* USB reset */
00061 #define EVT_HOST_SOF                  9         /* Host start of frame sent */
00062 #define EVT_HOST_HWUP                 10        /* Host wakeup detected */
00063 #define EVT_HOST_DISCONNECTION        11        /* The target device is disconencted */
00064 
00065 #define USB_MODE_UNDEFINED            0x00
00066 #define USB_MODE_HOST                 0x01
00067 #define USB_MODE_DEVICE               0x02
00068 
00069 /****************************** MACROS ****************************************/
00070 
00071 #define Usb_send_event(x)               (g_usb_event |= (1<<x))
00072 #define Usb_ack_event(x)                (g_usb_event &= ~(1<<x))
00073 #define Usb_clear_all_event()           (g_usb_event = 0)
00074 #define Is_usb_event(x)                 ((g_usb_event & (1<<x)) ? true : false)
00075 #define Is_not_usb_event(x)             ((g_usb_event & (1<<x)) ? false: true)
00076 #define Is_host_emergency_exit()        (Is_usb_event(EVT_HOST_DISCONNECTION) || Is_usb_event(EVT_USB_DEVICE_FUNCTION))
00077 
00078 
00079 /************************* PROTOTYPES (GLOBAL) ********************************/
00080 
00081 void usb_task_init     (void);
00082 void usb_task          (void);
00083 extern volatile uint16_t g_usb_event;
00084 extern volatile uint8_t private_sof_counter;
00085 
00086 #endif /* _USB_TASK_H_ */
00087 
@DOC_TITLE@
Generated on Mon Jan 18 09:26:08 2010 for AVR1907 Xplain USB Gateway by doxygen 1.5.5