00001
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040 #ifndef _CONF_USB_H_
00041 #define _CONF_USB_H_
00042
00043
00044 #include "modules/usb/usb_commun.h"
00045 #include "modules/usb/usb_commun_ms.h"
00046
00050
00051
00052
00053
00058
00062 #define USB_HOST_FEATURE DISABLED
00063
00067 #define USB_DEVICE_FEATURE ENABLED
00068
00070
00071
00072
00075
00080 #ifndef USE_USB_PADS_REGULATOR
00081 #define USE_USB_PADS_REGULATOR ENABLE // Possible values ENABLE or DISABLE
00082 #endif
00084
00085
00086
00098 #define VID_PID_TABLE {VID_ATMEL, 2, PID_MegaHIDMouse, 0x2014 \
00099 ,0x0123, 3, 0x2000, 0x2100, 0x1258}
00100
00111 #define CLASS_SUBCLASS_PROTOCOL {\
00112 0x00, 0x00, 0x00,\
00113 MS_CLASS, MS_SUB_CLASS2, MS_PROTOCOL,\
00114 MS_CLASS, MS_SUB_CLASS5, MS_PROTOCOL,\
00115 MS_CLASS, MS_SUB_CLASS6, MS_PROTOCOL,\
00116 HID_CLASS, NO_SUBCLASS, HID_PROTOCOL_MOUSE,\
00117 HID_CLASS, HID_SUB_CLASS_BOOT, HID_PROTOCOL_MOUSE,\
00118 HID_CLASS, NO_SUBCLASS, NO_PROTOCOL,\
00119 }
00120
00122 #define SIZEOF_DATA_STAGE 250
00123
00125 #define DEVICE_ADDRESS 0x05
00126
00128 #define MAX_INTERFACE_SUPPORTED 0x03
00129
00131 #define MAX_EP_PER_INTERFACE 3
00132
00136 #define HOST_STRICT_VID_PID_TABLE DISABLE
00137
00139 #define HOST_AUTO_CFG_ENDPOINT ENABLE
00140
00142 #define HOST_CONTINUOUS_SOF_INTERRUPT ENABLE
00143
00145 #define HOST_ERROR_RESTART DISABLE
00146
00148 #define USB_HOST_PIPE_INTERRUPT_TRANSFER DISABLE
00149
00151 #define ID_PIN_CHANGE_GENERATE_RESET ENABLE
00152
00154 #define TIMEOUT_DELAY_ENABLE ENABLE
00155
00157 #define TIMEOUT_DELAY 10
00158
00160 #define NAK_TIMEOUT_ENABLE DISABLE
00161
00163 #define NAK_SEND_TIMEOUT 0x0FFF
00164
00166 #define NAK_RECEIVE_TIMEOUT 0x0FFF
00167
00169 #define SOFTWARE_VBUS_CTRL ENABLE
00170
00171 #if (HOST_AUTO_CFG_ENDPOINT==FALSE)
00173 #define User_configure_endpoint()
00174 #endif
00175
00179
00180
00181 #define Usb_id_transition_action()
00182 #define Host_device_disconnection_action() Led0_off()
00183 #define Host_device_connection_action() Led0_on()
00184 #define Host_sof_action() host_sof_action()
00185 #define Host_suspend_action()
00186 #define Host_hwup_action()
00187 #define Host_device_not_supported_action()
00188 #define Host_device_class_not_supported_action() Led0_off()
00189 #define Host_device_supported_action()
00190 #define Host_device_error_action()
00192
00193 extern void host_sof_action(void);
00195
00196
00197
00198
00202
00203 #define USB_DEVICE_SN_USE ENABLE // Must be enable to see all disks under Windows in USB device MS mode
00204 #define USE_DEVICE_SN_UNIQUE DISABLE // ignore if USB_DEVICE_SN_USE = DISABLE
00205
00206 #define NB_ENDPOINTS 2 // number of endpoints in the application
00207 #define EP_MS_IN 1
00208 #define EP_MS_OUT 2
00209
00210 #define Usb_unicode(a) ((U16)(a))
00211 #define USB_REMOTE_WAKEUP_FEATURE DISABLE
00212
00213
00217
00218
00219 #define Usb_sof_action()
00220 #define Usb_wake_up_action()
00221 #define Usb_resume_action()
00222 #define Usb_suspend_action() nf_usb_stop()
00223 #define Usb_reset_action()
00224 #define Usb_vbus_on_action()
00225 #define Usb_vbus_off_action() nf_usb_stop()
00226 #define Usb_set_configuration_action()
00227
00228 extern void nf_usb_stop(void);
00229
00231
00233
00237
00238
00239 #include "lib_board/avr_ms_board/avr_ms_board_drv.h"
00240 #define Scsi_start_read_action() Led_ms_read_on()
00241 #define Scsi_stop_read_action() Led_ms_read_off()
00242 #define Scsi_start_write_action() Led_ms_write_on()
00243 #define Scsi_stop_write_action() Led_ms_write_off()
00245
00247
00248 #endif // _CONF_USB_H_