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 00041 #ifndef _USB_USER_ENUM_H_ 00042 #define _USB_USER_ENUM_H_ 00043 00044 /*_____ I N C L U D E S ____________________________________________________*/ 00045 00046 #include "config.h" 00047 00048 /*_____ M A C R O S ________________________________________________________*/ 00049 00050 00051 #define GET_LINE_CODING 0x21 00052 #define SET_LINE_CODING 0x20 00053 #define SET_CONTROL_LINE_STATE 0x22 00054 #define SEND_BREAK 0x23 00055 #define SEND_ENCAPSULATED_COMMAND 0x00 00056 #define GET_ENCAPSULATED_COMMAND 0x01 00057 00058 extern code S_usb_device_descriptor usb_dev_desc; 00059 extern code S_usb_user_configuration_descriptor usb_conf_desc; 00060 extern code S_usb_user_configuration_descriptor usb_other_conf_desc; 00061 extern code S_usb_device_qualifier_descriptor usb_qual_desc; 00062 extern code S_usb_manufacturer_string_descriptor usb_user_manufacturer_string_descriptor; 00063 extern code S_usb_product_string_descriptor usb_user_product_string_descriptor; 00064 extern code S_usb_serial_number usb_user_serial_number; 00065 extern code S_usb_language_id usb_user_language_id; 00066 00067 00068 00069 /*_____ D E F I N I T I O N ________________________________________________*/ 00070 Bool usb_user_read_request(U8, U8); 00071 Bool usb_user_get_descriptor(U8 , U8); 00072 void usb_user_endpoint_init(U8); 00073 void cdc_get_line_coding(); 00074 void cdc_set_line_coding(); 00075 void cdc_set_control_line_state (void); 00076 00077 // ____ T Y P E D E F I N I T I O N _______________________________________ 00078 00079 typedef struct 00080 { 00081 U32 dwDTERate; 00082 U8 bCharFormat; 00083 U8 bParityType; 00084 U8 bDataBits; 00085 }S_line_coding; 00086 00087 #endif 00088