Be doubly-certain that the incomming CDC class driver's endpoint/pipe is flushed...
[pub/USBasp.git] / Projects / XPLAINBridge / XPLAINBridge.txt
1 /** \file
2 *
3 * This file contains special DoxyGen information for the generation of the main page and other special
4 * documentation pages. It is not a project source file.
5 */
6
7 /** \mainpage XPLAIN UART Bridge/PDI Programmer Project
8 *
9 * \section SSec_Compat Project Compatibility:
10 *
11 * The following list indicates what microcontrollers are compatible with this project.
12 *
13 * - AT90USB1287
14 *
15 * \section SSec_Info USB Information:
16 *
17 * The following table gives a rundown of the USB utilization of this project.
18 *
19 * <table>
20 * <tr>
21 * <td><b>USB Mode:</b></td>
22 * <td>Device</td>
23 * <td>Device</td>
24 * </tr>
25 * <tr>
26 * <td><b>USB Class:</b></td>
27 * <td>1) Communications Device Class (CDC)</td>
28 * <td>2) Vendor Specific Class</td>
29 * </tr>
30 * <tr>
31 * <td><b>USB Subclass:</b></td>
32 * <td>1) Abstract Control Model (ACM)</td>
33 * <td>2) N/A</td>
34 * </tr>
35 * <tr>
36 * <td><b>Relevant Standards:</b></td>
37 * <td>1) USBIF CDC Class Standard</td>
38 * <td>2) Atmel AVRISP MKII Protocol Specification</td>
39 * </tr>
40 * <tr>
41 * <td><b>Usable Speeds:</b></td>
42 * <td>Full Speed Mode</td>
43 * <td>Full Speed Mode</td>
44 * </tr>
45 * </table>
46 *
47 * \section SSec_Description Project Description:
48 *
49 * This project serves a dual purpose. When loaded into the USB AVR on the XPLAIN board, it will act as either a USB to Serial
50 * converter for the XPLAIN's hardware USART (at a speed of 9600 baud), or a PDI programmer for the XMEGA. This project replaces
51 * the firmware preloaded onto the XPLAIN's onboard AT90USB1287 microcontroller.
52 *
53 * When inserted, the JTAG port's TDI pin is read. If the pin is left high, the device will enumerate as a regular COM port on
54 * the host, which can then be opened and data exchanged between the XMEGA and Host as if the XMEGA was connected directly to
55 * the host's serial port. If the pin is pulled low, the device will enumerate as an AVRISP-MKII to the host, so that the XMEGA
56 * can be reprogrammed by AVRStudio or other compatible software such as avrdude.
57 *
58 * After running this project for the first time on a new computer, you will need to supply the .INF file located in this project
59 * project's directory as the device's driver when running under Windows. This will enable Windows to use its inbuilt CDC drivers,
60 * negating the need for custom drivers for the device. Other Operating Systems should automatically use their own inbuilt CDC-ACM
61 * drivers.
62 *
63 * This project relies on files from the LUFA AVRISP-MKII project.
64 *
65 * \section SSec_Options Project Options
66 *
67 * The following defines can be found in this project, which can control the project behaviour when defined, or changed in value.
68 *
69 * <table>
70 * <tr>
71 * <td><b>Define Name:</b></td>
72 * <td><b>Location:</b></td>
73 * <td><b>Description:</b></td>
74 * </tr>
75 * <tr>
76 * <td>BUFF_STATICSIZE</td>
77 * <td>RingBuff.h</td>
78 * <td>Defines the maximum number of bytes which can be buffered in each Ring Buffer.</td>
79 * </tr>
80 * </table>
81 */