Modules | |
USB software Events Management | |
Macros to manage USB events detected under interrupt. | |
Standard requests defines | |
Macros | |
#define | USB_HIGH_SPEED_SUPPORT false |
#define | USB_MODE_DEVICE 0x01 |
#define | USB_MODE_HOST 0x02 |
#define | USB_MODE_UNDEFINED 0x00 |
Functions | |
U32 | host_get_timeout (void) |
void | usb_task (void) |
Entry point of the USB mamnagement. More... | |
void | usb_task_init (void) |
This function initializes the USB process. More... | |
Variables | |
volatile U16 | g_usb_event |
Public: uint16_t g_usb_event usb_connected is used to store USB events detected upon USB general interrupt subroutine Its value is managed by the following macros (See usb_task.h file) Usb_send_event(x) Usb_ack_event(x) Is_usb_event(x) Usb_clear_all_event() More... | |
volatile U8 | g_usb_mode |
Public: uint8_t g_usb_mode Used in dual-role application (both device/host) to store the current mode the USB controller is operating. More... | |
volatile U32 | private_sof_counter |
Private: uint8_t private_sof_counter Incremented by host SOF interrupt subroutime This counter is used to detect time-out in host requests. More... | |
#define USB_HIGH_SPEED_SUPPORT false |
#define USB_MODE_DEVICE 0x01 |
Referenced by ai_hid_class_get_device_status(), if(), usb_general_interrupt(), and usb_task().
#define USB_MODE_HOST 0x02 |
Referenced by ai_usb_ms_get_device_status(), if(), usb_general_interrupt(), and usb_task().
#define USB_MODE_UNDEFINED 0x00 |
Referenced by usb_task().
U32 host_get_timeout | ( | void | ) |
void usb_task | ( | void | ) |
Entry point of the USB mamnagement.
Depending on the mode supported (HOST/DEVICE/DUAL_ROLE) the function calls the corresponding USB management function
Depending on the USB mode supported (HOST/DEVICE/DUAL_ROLE) the function calls the coresponding USB management function.
Entry point of the USB mamnagement.
Depending on the USB mode supported (HOST/DEVICE/DUAL_ROLE) the function calls the corresponding USB management function.
References Enable_global_interrupt, g_old_usb_mode, g_usb_mode, Is_usb_id_device, private_sof_counter, usb_device_task(), usb_device_task_init(), Usb_enable_id_interrupt, usb_host_task(), usb_host_task_init(), USB_MODE_DEVICE, USB_MODE_HOST, and USB_MODE_UNDEFINED.
Referenced by main(), and usb_task_init().
void usb_task_init | ( | void | ) |
This function initializes the USB process.
This function enables the USB controller and init the USB interrupts. The aim is to allow the USB connection detection in order to send the appropriate USB event to the operating mode manager. Depending on the mode supported (HOST/DEVICE/DUAL_ROLE) the function calls the corresponding USB mode initialization function
Depending on the mode supported (HOST/DEVICE/DUAL_ROLE) the function calls the coresponding USB mode initialization function
Depending on the mode supported (HOST/DEVICE/DUAL_ROLE) the function calls the corresponding USB mode initialization function
References configTSK_USB_NAME, configTSK_USB_PRIORITY, configTSK_USB_STACK_SIZE, NULL, usb_task(), vSemaphoreCreateBinary, and xTaskCreate.
Referenced by b_usbsys_start(), and main().
volatile U16 g_usb_event |
Public: uint16_t g_usb_event usb_connected is used to store USB events detected upon USB general interrupt subroutine Its value is managed by the following macros (See usb_task.h file) Usb_send_event(x) Usb_ack_event(x) Is_usb_event(x) Usb_clear_all_event()
Public: uint16_t g_usb_event usb_connected is used to store USB events detected upon USB general interrupt subroutine Its value is managed by the following macros (See usb_task.h file) Usb_send_event(x) Usb_ack_event(x) Is_usb_event(x) Usb_clear_all_event()
volatile U8 g_usb_mode |
Public: uint8_t g_usb_mode Used in dual-role application (both device/host) to store the current mode the USB controller is operating.
Public: uint8_t g_usb_mode Used in dual-role application (both device/host) to store the current mode the USB controller is operating.
Referenced by ai_hid_class_get_device_status(), ai_usb_ms_get_device_status(), if(), usb_general_interrupt(), and usb_task().
volatile U32 private_sof_counter |
Private: uint8_t private_sof_counter Incremented by host SOF interrupt subroutime This counter is used to detect time-out in host requests.
It must not be modified by the user applicative tasks.
Private: uint8_t private_sof_counter Incremented by host SOF interrupt subroutime This counter is used to detect time-out in host requests.
It must not be modified by the user applicative tasks.
Referenced by host_get_data(), host_get_data_interrupt(), host_get_timeout(), host_send_data(), host_send_data_interrupt(), host_transfer_control(), usb_general_interrupt(), usb_pipe_interrupt(), and usb_task().