conf_usb.h

Go to the documentation of this file.
00001 /*This file has been prepared for Doxygen automatic documentation generation.*/
00013 
00014 /* Copyright (c) 2007, Atmel Corporation All rights reserved.
00015  *
00016  * Redistribution and use in source and binary forms, with or without
00017  * modification, are permitted provided that the following conditions are met:
00018  *
00019  * 1. Redistributions of source code must retain the above copyright notice,
00020  * this list of conditions and the following disclaimer.
00021  *
00022  * 2. Redistributions in binary form must reproduce the above copyright notice,
00023  * this list of conditions and the following disclaimer in the documentation
00024  * and/or other materials provided with the distribution.
00025  *
00026  * 3. The name of ATMEL may not be used to endorse or promote products derived
00027  * from this software without specific prior written permission.
00028  *
00029  * THIS SOFTWARE IS PROVIDED BY ATMEL ``AS IS'' AND ANY EXPRESS OR IMPLIED
00030  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
00031  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY AND
00032  * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT,
00033  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
00034  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
00035  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
00036  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
00037  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
00038  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
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    // _________________ USB MODE CONFIGURATION ____________________________
00053    //
00058 
00062       #define USB_HOST_FEATURE            DISABLED
00063 
00067       #define USB_DEVICE_FEATURE          ENABLED
00068 
00070 
00071    // _________________ USB REGULATOR CONFIGURATION _______________________
00072    //
00075 
00080 #ifndef USE_USB_PADS_REGULATOR
00081    #define USE_USB_PADS_REGULATOR   ENABLE      // Possible values ENABLE or DISABLE
00082 #endif
00084 
00085    // _________________ HOST MODE CONFIGURATION ____________________________
00086    //
00090 
00099    #define VID_PID_TABLE            {VID_ATMEL, 2, PID_MegaHIDMouse, 0x2014 \
00100                                     ,0x0123, 3, 0x2000, 0x2100, 0x1258}
00101 
00112    #define CLASS_SUBCLASS_PROTOCOL     {0x0A, 0x00, 0x00, \
00113                                        0x00, 0x00, 0x00,\
00114                                        0xFF,0x00,0x00}
00115 
00117    #define SIZEOF_DATA_STAGE        250
00118 
00120    #define DEVICE_ADDRESS           0x05
00121 
00125    #define HOST_STRICT_VID_PID_TABLE      DISABLE
00126 
00128    #define HOST_AUTO_CFG_ENDPOINT         ENABLE
00129 
00131    #define HOST_CONTINUOUS_SOF_INTERRUPT  DISABLE
00132 
00134    #define HOST_ERROR_RESTART             ENABLE
00135 
00137    #define ID_PIN_CHANGE_GENERATE_RESET   DISABLE
00138 
00140    #define NAK_TIMEOUT_DELAY              1
00141 
00142    #if (HOST_AUTO_CFG_ENDPOINT==FALSE)
00144       #define        User_configure_endpoint()
00145    #endif
00146 
00150    // write here the action to associate to each USB host event
00151    // be carefull not to waste time in order not disturbing the functions
00152    #define Usb_id_transition_action()
00153    #define Host_device_disconnection_action()
00154    #define Host_device_connection_action()
00155    #define Host_sof_action()
00156    #define Host_suspend_action()                      host_suspend_action();
00157    #define Host_hwup_action()
00158    #define Host_device_not_supported_action()
00159    #define Host_device_supported_action()
00160    #define Host_device_error_action()
00162 
00163 extern void host_suspend_action(void);
00165 
00166 
00167 // _________________ DEVICE MODE CONFIGURATION __________________________
00168 
00172 
00173 #define USB_DEVICE_SN_USE          ENABLE             // Must be enable to see all disks under Windows in USB device MS mode
00174 #define USE_DEVICE_SN_UNIQUE       DISABLE            // ignore if USB_DEVICE_SN_USE = DISABLE
00175 
00176 #define NB_ENDPOINTS          3  // number of endpoints in the application
00177 #define EP_MS_IN              1
00178 #define EP_MS_OUT             2
00179 
00180 #define USB_REMOTE_WAKEUP_FEATURE   DISABLE
00181 
00182 #define Usb_unicode(a)         ((U16)(a))
00183 
00187    // write here the action to associate to each USB event
00188    // be carefull not to waste time in order not disturbing the functions
00189 #define Usb_sof_action()         sof_action();
00190 #define Usb_wake_up_action()
00191 #define Usb_resume_action()
00192 #define Usb_suspend_action()
00193 #define Usb_reset_action()
00194 #define Usb_vbus_on_action()
00195 #define Usb_vbus_off_action()
00196 #define Usb_set_configuration_action()
00198 
00199 extern void sof_action(void);
00201 
00205    // write here the action to associate to each SCSI commands
00206    // be carefull not to waste time in order not disturbing the functions
00207 #define Scsi_start_read_action()    Led1_on()
00208 #define Scsi_stop_read_action()     Led1_off()
00209 #define Scsi_start_write_action()   Led3_on()
00210 #define Scsi_stop_write_action()    Led3_off()
00212 
00214 
00215 #endif // _CONF_USB_H_

Generated on Fri Oct 31 15:08:57 2008 for ATMEL by  doxygen 1.5.3