Added ENABLE_TELNET_SERVER compile time option to the Webserver project to disable...
[pub/USBasp.git] / Projects / AVRISP-MKII / Lib / V2Protocol.h
index 3535c6e..26c42ab 100644 (file)
@@ -1,21 +1,21 @@
 /*\r
              LUFA Library\r
-     Copyright (C) Dean Camera, 2009.\r
+     Copyright (C) Dean Camera, 2010.\r
               \r
   dean [at] fourwalledcubicle [dot] com\r
       www.fourwalledcubicle.com\r
 */\r
 \r
 /*\r
-  Copyright 2009  Dean Camera (dean [at] fourwalledcubicle [dot] com)\r
+  Copyright 2010  Dean Camera (dean [at] fourwalledcubicle [dot] com)\r
 \r
-  Permission to use, copy, modify, and distribute this software\r
-  and its documentation for any purpose and without fee is hereby\r
-  granted, provided that the above copyright notice appear in all\r
-  copies and that both that the copyright notice and this\r
-  permission notice and warranty disclaimer appear in supporting\r
-  documentation, and that the name of the author not be used in\r
-  advertising or publicity pertaining to distribution of the\r
+  Permission to use, copy, modify, distribute, and sell this \r
+  software and its documentation for any purpose is hereby granted\r
+  without fee, provided that the above copyright notice appear in \r
+  all copies and that both that the copyright notice and this\r
+  permission notice and warranty disclaimer appear in supporting \r
+  documentation, and that the name of the author not be used in \r
+  advertising or publicity pertaining to distribution of the \r
   software without specific, written prior permission.\r
 \r
   The author disclaim all warranties with regard to this\r
  *  Header file for V2Protocol.c.\r
  */\r
 \r
-#ifndef _V2_PROTOCOL_
-#define _V2_PROTOCOL_
-
-       /* Includes: */
-               #include <LUFA/Drivers/USB/USB.h>
+#ifndef _V2_PROTOCOL_\r
+#define _V2_PROTOCOL_\r
+\r
+       /* Includes: */\r
+               #include <LUFA/Drivers/USB/USB.h>\r
                #include <LUFA/Drivers/Peripheral/SPI.h>\r
                \r
-               #include "../Descriptors.h"
+               #include "../Descriptors.h"\r
                #include "V2ProtocolConstants.h"\r
-               #include "V2ProtocolParams.h"
+               #include "V2ProtocolParams.h"\r
                #include "ISP/ISPProtocol.h"\r
                #include "XPROG/XPROGProtocol.h"\r
 \r
                                #define ENABLE_XPROG_PROTOCOL\r
                        #endif\r
                #endif\r
-
+\r
        /* Macros: */\r
-               /** Programmer ID string, returned to the host during the CMD_SIGN_ON command processing */
-               #define PROGRAMMER_ID       "AVRISP_MK2"\r
+               #if !defined(__DOXYGEN__)\r
+                       #define _GETADCMUXMASK2(x, y)       x ## y\r
+                       #define _GETADCMUXMASK(x, y)        _GETADCMUXMASK2(x, y)\r
+               #endif\r
+\r
+               /** Programmer ID string, returned to the host during the CMD_SIGN_ON command processing */\r
+               #define PROGRAMMER_ID              "AVRISP_MK2"\r
                \r
                /** Timeout period for each issued command from the host before it is aborted */\r
-               #define COMMAND_TIMEOUT_MS   200\r
+               #define COMMAND_TIMEOUT_MS         200\r
                \r
                /** Command timeout counter register, GPIOR for speed */\r
-               #define TimeoutMSRemaining   GPIOR0\r
+               #define TimeoutMSRemaining         GPIOR0\r
+\r
+               /** MUX mask for the VTARGET ADC channel number */\r
+               #define VTARGET_ADC_CHANNEL_MASK   _GETADCMUXMASK(ADC_CHANNEL, VTARGET_ADC_CHANNEL)\r
 \r
        /* External Variables: */\r
                extern uint32_t CurrentAddress;\r
                extern bool     MustSetAddress;\r
 \r
        /* Function Prototypes: */\r
+               void V2Protocol_Init(void);\r
                void V2Protocol_ProcessCommand(void);\r
                \r
                #if defined(INCLUDE_FROM_V2PROTOCOL_C)\r
-                       static void V2Protocol_UnknownCommand(uint8_t V2Command);\r
+                       static void V2Protocol_UnknownCommand(const uint8_t V2Command);\r
                        static void V2Protocol_SignOn(void);\r
-                       static void V2Protocol_GetSetParam(uint8_t V2Command);\r
+                       static void V2Protocol_GetSetParam(const uint8_t V2Command);\r
                        static void V2Protocol_ResetProtection(void);\r
                        static void V2Protocol_LoadAddress(void);\r
-               #endif
-
-#endif
-
+               #endif\r
+\r
+#endif\r
+\r