Collaboration diagram for USB host operating mode configuration:
|
Modules | |
| USB host custom actions | |
Defines | |
| #define | HID_CLASS 0x03 |
| #define | MS_CLASS 0x08 |
| #define | NO_SUBCLASS 0x00 |
| #define | BOOT_SUBCLASS 0x01 |
| #define | MOUSE_PROTOCOL 0x02 |
| #define | NO_PROTOCOL 0x00 |
| #define | VID_PID_TABLE { 0x03EB, 1, 0x2031 } |
| VID/PID supported table list. | |
| #define | CLASS_SUBCLASS_PROTOCOL |
| CLASS/SUBCLASS_PROTOCOL supported table list. | |
| #define | SIZEOF_DATA_STAGE 250 |
| The size of RAM buffer reserved of descriptors manipulation. | |
| #define | DEVICE_ADDRESS 0x05 |
| The address that will be assigned to the connected device. | |
| #define | MAX_INTERFACE_SUPPORTED 0x03 |
| The maximum number of interface that can be supported (composite device). | |
| #define | MAX_EP_PER_INTERFACE 3 |
| The maximum number of endpoints per interface supported. | |
| #define | HOST_STRICT_VID_PID_TABLE ENABLE |
| The host controller will be limited to the strict VID/PID list. | |
| #define | HOST_AUTO_CFG_ENDPOINT ENABLE |
| Try to configure the host pipe according to the device descriptors received. | |
| #define | HOST_CONTINUOUS_SOF_INTERRUPT DISABLE |
| Host start of frame interrupt always enable. | |
| #define | HOST_ERROR_RESTART ENABLE |
| When Host error state detected, goto unattached state. | |
| #define | USB_HOST_PIPE_INTERRUPT_TRANSFER ENABLE |
| USB host pipes transfers use USB communication interrupt (allows to use none blocking functions). | |
| #define | ID_PIN_CHANGE_GENERATE_RESET ENABLE |
| Force WDT reset upon ID pin change. | |
| #define | TIMEOUT_DELAY_ENABLE ENABLE |
| Enable Timeout delay (time) for host transfer. | |
| #define | TIMEOUT_DELAY 10 |
| delay 1/4sec (250ms) before timeout value | |
| #define | NAK_TIMEOUT_ENABLE DISABLE |
| Enable cpt NAK Timeout for host transfer. | |
| #define | NAK_SEND_TIMEOUT 0x0FFF |
| Number of NAK handshake before timeout for transmit functions (up to 0xFFFF). | |
| #define | NAK_RECEIVE_TIMEOUT 0x0FFF |
| NAKNumber of NAK handshake before timeout for receive functions (up to 0xFFFF). | |
| #define | SOFTWARE_VBUS_CTRL ENABLE |
| For reduced host only allows to control VBUS generator with PIO PE.7. | |
| #define | User_configure_endpoint() |
| If no auto configuration of EP, map here user function. | |
Functions | |
| void | set_power_down_mode (void) |
| set_power_down_mode. | |
| void | host_sof_action (void) |
Variables | |
| volatile U8 | spider_connected |
| #define HID_CLASS 0x03 |
| #define MS_CLASS 0x08 |
Definition at line 122 of file conf_usb.h.
| #define NO_SUBCLASS 0x00 |
Definition at line 123 of file conf_usb.h.
| #define BOOT_SUBCLASS 0x01 |
Definition at line 124 of file conf_usb.h.
| #define MOUSE_PROTOCOL 0x02 |
| #define NO_PROTOCOL 0x00 |
Definition at line 126 of file conf_usb.h.
| #define VID_PID_TABLE { 0x03EB, 1, 0x2031 } |
VID/PID supported table list.
This table contains the VID/PID that are supported by the reduced host application VID_PID_TABLE format definition:
define VID_PID_TABLE {VID1, number_of_pid_for_this_VID1, PID11_value,..., PID1X_Value
...
,VIDz, number_of_pid_for_this_VIDz, PIDz1_value,..., PIDzX_Value} The TEST DEVICE must not be included : VID=0x1A0A & PID=0xBADD For the OTG Compliance the B-OPT uses a PID=0x1234 as the "Unsupported device"
Definition at line 139 of file conf_usb.h.
| #define CLASS_SUBCLASS_PROTOCOL |
Value:
{0x00, 0x00, 0x00,\
MS_CLASS, 0x06, 0x50,\
HID_CLASS, NO_SUBCLASS, MOUSE_PROTOCOL,\
HID_CLASS, BOOT_SUBCLASS, MOUSE_PROTOCOL,\
HID_CLASS, NO_SUBCLASS, NO_PROTOCOL}
This table contains the CLASS/SUBCLASS/PROTOCOL that is supported by the reduced host application This table definition allows to extended the reduced application device support to an entire Class/ /subclass/protocol instead of a simple VID/PID table list.
CLASS_SUBCLASS_PROTOCOL format definition:
define CLASS_SUBCLASS_PROTOCOL {CLASS1, SUB_CLASS1,PROTOCOL1,
...
CLASSz, SUB_CLASSz,PROTOCOLz}
Definition at line 151 of file conf_usb.h.
| #define SIZEOF_DATA_STAGE 250 |
The size of RAM buffer reserved of descriptors manipulation.
Definition at line 159 of file conf_usb.h.
Referenced by get_interface_descriptor_offset(), host_auto_configure_endpoint(), and host_check_class().
| #define DEVICE_ADDRESS 0x05 |
The address that will be assigned to the connected device.
Definition at line 162 of file conf_usb.h.
Referenced by usb_host_task().
| #define MAX_INTERFACE_SUPPORTED 0x03 |
The maximum number of interface that can be supported (composite device).
Definition at line 165 of file conf_usb.h.
Referenced by host_check_class().
| #define MAX_EP_PER_INTERFACE 3 |
| #define HOST_STRICT_VID_PID_TABLE ENABLE |
The host controller will be limited to the strict VID/PID list.
When enabled, if the device PID/VID does not belongs to the supported list, the host controller library will not go to deeper configuration, but to error state.
Definition at line 173 of file conf_usb.h.
| #define HOST_AUTO_CFG_ENDPOINT ENABLE |
Try to configure the host pipe according to the device descriptors received.
Definition at line 176 of file conf_usb.h.
| #define HOST_CONTINUOUS_SOF_INTERRUPT DISABLE |
| #define HOST_ERROR_RESTART ENABLE |
| #define USB_HOST_PIPE_INTERRUPT_TRANSFER ENABLE |
USB host pipes transfers use USB communication interrupt (allows to use none blocking functions).
Definition at line 185 of file conf_usb.h.
| #define ID_PIN_CHANGE_GENERATE_RESET ENABLE |
| #define TIMEOUT_DELAY_ENABLE ENABLE |
| #define TIMEOUT_DELAY 10 |
delay 1/4sec (250ms) before timeout value
Definition at line 194 of file conf_usb.h.
Referenced by host_get_data(), host_send_data(), and usb_general_interrupt().
| #define NAK_TIMEOUT_ENABLE DISABLE |
| #define NAK_SEND_TIMEOUT 0x0FFF |
Number of NAK handshake before timeout for transmit functions (up to 0xFFFF).
Definition at line 200 of file conf_usb.h.
Referenced by host_send_data(), host_send_data_interrupt(), and usb_pipe_interrupt().
| #define NAK_RECEIVE_TIMEOUT 0x0FFF |
NAKNumber of NAK handshake before timeout for receive functions (up to 0xFFFF).
Definition at line 203 of file conf_usb.h.
Referenced by host_get_data(), host_get_data_interrupt(), and usb_pipe_interrupt().
| #define SOFTWARE_VBUS_CTRL ENABLE |
For reduced host only allows to control VBUS generator with PIO PE.7.
Definition at line 206 of file conf_usb.h.
| #define User_configure_endpoint | ( | ) |
If no auto configuration of EP, map here user function.
Definition at line 210 of file conf_usb.h.
Referenced by usb_host_task().
| void set_power_down_mode | ( | void | ) |
set_power_down_mode.
This function makes the AVR core enter power down mode.
| none |
Definition at line 34 of file power_drv.c.
00035 { 00036 Setup_power_down_mode(); 00037 Sleep_instruction(); 00038 }
| void host_sof_action | ( | void | ) |
| volatile U8 spider_connected |
1.5.1-p1