aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/XPLAINBridge
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2012-05-12 15:32:53 +0000
committerDean Camera <dean@fourwalledcubicle.com>2012-05-12 15:32:53 +0000
commit802910d49f2ac175b06a8ebfbcb61551a171b85a (patch)
tree4be04602f6fb93fa55c506e8407b0e3993556cac /Projects/XPLAINBridge
parent33d9a75b0332ded9cebc1388a800922ebe1c3dbe (diff)
downloadlufa-802910d49f2ac175b06a8ebfbcb61551a171b85a.tar.gz
lufa-802910d49f2ac175b06a8ebfbcb61551a171b85a.tar.bz2
lufa-802910d49f2ac175b06a8ebfbcb61551a171b85a.zip
AppConfigHeaders: Update several additional user projects to use configuration header files, rather than makefile defines. Remove compile time warnings for projects lacking device serial support, remove incomplete StandaloneProgrammer project.
Diffstat (limited to 'Projects/XPLAINBridge')
-rw-r--r--Projects/XPLAINBridge/Config/AppConfig.h64
-rw-r--r--Projects/XPLAINBridge/Config/LUFAConfig.h93
-rw-r--r--Projects/XPLAINBridge/USARTDescriptors.c11
-rw-r--r--Projects/XPLAINBridge/XPLAINBridge.h1
-rw-r--r--Projects/XPLAINBridge/XPLAINBridge.txt4
-rw-r--r--Projects/XPLAINBridge/makefile22
6 files changed, 162 insertions, 33 deletions
diff --git a/Projects/XPLAINBridge/Config/AppConfig.h b/Projects/XPLAINBridge/Config/AppConfig.h
new file mode 100644
index 000000000..3fe80171d
--- /dev/null
+++ b/Projects/XPLAINBridge/Config/AppConfig.h
@@ -0,0 +1,64 @@
+/*
+ LUFA Library
+ Copyright (C) Dean Camera, 2012.
+
+ dean [at] fourwalledcubicle [dot] com
+ www.lufa-lib.org
+*/
+
+/*
+ Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com)
+
+ Permission to use, copy, modify, distribute, and sell this
+ software and its documentation for any purpose is hereby granted
+ without fee, provided that the above copyright notice appear in
+ all copies and that both that the copyright notice and this
+ permission notice and warranty disclaimer appear in supporting
+ documentation, and that the name of the author not be used in
+ advertising or publicity pertaining to distribution of the
+ software without specific, written prior permission.
+
+ The author disclaim all warranties with regard to this
+ software, including all implied warranties of merchantability
+ and fitness. In no event shall the author be liable for any
+ special, indirect or consequential damages or any damages
+ whatsoever resulting from loss of use, data or profits, whether
+ in an action of contract, negligence or other tortious action,
+ arising out of or in connection with the use or performance of
+ this software.
+*/
+
+/** \file
+ * \brief Application Configuration Header File
+ *
+ * This is a header file which is be used to configure some of
+ * the application's compile time options, as an alternative to
+ * specifying the compile time constants supplied through a
+ * makefile or build system.
+ *
+ * For information on what each token does, refer to the
+ * \ref Sec_Options section of the application documentation.
+ */
+
+#ifndef _APP_CONFIG_H_
+#define _APP_CONFIG_H_
+
+ #define AUX_LINE_PORT PORTB
+ #define AUX_LINE_PIN PINB
+ #define AUX_LINE_DDR DDRB
+ #define AUX_LINE_MASK (1 << 4)
+
+ #define ENABLE_XPROG_PROTOCOL
+
+ #define VTARGET_ADC_CHANNEL 2
+ #define VTARGET_REF_VOLTS 3.3
+ #define VTARGET_SCALE_FACTOR 2
+// #define VTARGET_USE_INTERNAL_REF
+// #define NO_VTARGET_DETECT
+// #define XCK_RESCUE_CLOCK_ENABLE
+// #define INVERTED_ISP_MISO
+
+// #define LIBUSB_DRIVER_COMPAT
+// #define FIRMWARE_VERSION_MINOR 0x11
+
+#endif \ No newline at end of file
diff --git a/Projects/XPLAINBridge/Config/LUFAConfig.h b/Projects/XPLAINBridge/Config/LUFAConfig.h
new file mode 100644
index 000000000..4cd8b39f1
--- /dev/null
+++ b/Projects/XPLAINBridge/Config/LUFAConfig.h
@@ -0,0 +1,93 @@
+/*
+ LUFA Library
+ Copyright (C) Dean Camera, 2012.
+
+ dean [at] fourwalledcubicle [dot] com
+ www.lufa-lib.org
+*/
+
+/*
+ Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com)
+
+ Permission to use, copy, modify, distribute, and sell this
+ software and its documentation for any purpose is hereby granted
+ without fee, provided that the above copyright notice appear in
+ all copies and that both that the copyright notice and this
+ permission notice and warranty disclaimer appear in supporting
+ documentation, and that the name of the author not be used in
+ advertising or publicity pertaining to distribution of the
+ software without specific, written prior permission.
+
+ The author disclaim all warranties with regard to this
+ software, including all implied warranties of merchantability
+ and fitness. In no event shall the author be liable for any
+ special, indirect or consequential damages or any damages
+ whatsoever resulting from loss of use, data or profits, whether
+ in an action of contract, negligence or other tortious action,
+ arising out of or in connection with the use or performance of
+ this software.
+*/
+
+/** \file
+ * \brief LUFA Library Configuration Header File
+ *
+ * This header file is used to configure LUFA's compile time options,
+ * as an alternative to the compile time constants supplied through
+ * a makefile.
+ *
+ * For information on what each token does, refer to the LUFA
+ * manual section "Summary of Compile Tokens".
+ */
+
+#ifndef _LUFA_CONFIG_H_
+#define _LUFA_CONFIG_H_
+
+ #if (ARCH == ARCH_AVR8)
+
+ /* Non-USB Related Configuration Tokens: */
+// #define DISABLE_TERMINAL_CODES
+
+ /* USB Class Driver Related Tokens: */
+// #define HID_HOST_BOOT_PROTOCOL_ONLY
+// #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
+// #define HID_USAGE_STACK_DEPTH {Insert Value Here}
+// #define HID_MAX_COLLECTIONS {Insert Value Here}
+// #define HID_MAX_REPORTITEMS {Insert Value Here}
+// #define HID_MAX_REPORT_IDS {Insert Value Here}
+// #define NO_CLASS_DRIVER_AUTOFLUSH
+
+ /* General USB Driver Related Tokens: */
+ #define ORDERED_EP_CONFIG
+ #define USE_STATIC_OPTIONS (USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)
+ #define USB_DEVICE_ONLY
+// #define USB_HOST_ONLY
+// #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
+// #define NO_LIMITED_CONTROLLER_CONNECT
+ #define NO_SOF_EVENTS
+
+ /* USB Device Mode Driver Related Tokens: */
+// #define USE_RAM_DESCRIPTORS
+ #define USE_FLASH_DESCRIPTORS
+// #define USE_EEPROM_DESCRIPTORS
+// #define NO_INTERNAL_SERIAL
+ #define FIXED_CONTROL_ENDPOINT_SIZE 16
+ #define DEVICE_STATE_AS_GPIOR 0
+ #define FIXED_NUM_CONFIGURATIONS 1
+// #define CONTROL_ONLY_DEVICE
+// #define INTERRUPT_CONTROL_ENDPOINT
+ #define NO_DEVICE_REMOTE_WAKEUP
+ #define NO_DEVICE_SELF_POWER
+
+ /* USB Host Mode Driver Related Tokens: */
+// #define HOST_STATE_AS_GPIOR {Insert Value Here}
+// #define USB_HOST_TIMEOUT_MS {Insert Value Here}
+// #define HOST_DEVICE_SETTLE_DELAY_MS {Insert Value Here}
+// #define NO_AUTO_VBUS_MANAGEMENT
+// #define INVERTED_VBUS_ENABLE_LINE
+
+ #else
+
+ #error Unsupported architecture for this LUFA configuration file.
+
+ #endif
+#endif
diff --git a/Projects/XPLAINBridge/USARTDescriptors.c b/Projects/XPLAINBridge/USARTDescriptors.c
index 6c131afd4..1b265411c 100644
--- a/Projects/XPLAINBridge/USARTDescriptors.c
+++ b/Projects/XPLAINBridge/USARTDescriptors.c
@@ -37,17 +37,6 @@
#include "USARTDescriptors.h"
-/* On some devices, there is a factory set internal serial number which can be automatically sent to the host as
- * the device's serial number when the Device Descriptor's .SerialNumStrIndex entry is set to USE_INTERNAL_SERIAL.
- * This allows the host to track a device across insertions on different ports, allowing them to retain allocated
- * resources like COM port numbers and drivers. On demos using this feature, give a warning on unsupported devices
- * so that the user can supply their own serial number descriptor instead or remove the USE_INTERNAL_SERIAL value
- * from the Device Descriptor (forcing the host to generate a serial number for each device from the VID, PID and
- * port location).
- */
-#if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
- #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
-#endif
/** Device descriptor structure. This descriptor, located in FLASH memory, describes the overall
* device characteristics, including the supported USB version, control endpoint size and the
diff --git a/Projects/XPLAINBridge/XPLAINBridge.h b/Projects/XPLAINBridge/XPLAINBridge.h
index 33c66bf51..7bba40fef 100644
--- a/Projects/XPLAINBridge/XPLAINBridge.h
+++ b/Projects/XPLAINBridge/XPLAINBridge.h
@@ -48,6 +48,7 @@
#include "Lib/V2Protocol.h"
#include "Lib/SoftUART.h"
+ #include "Config/AppConfig.h"
#include <LUFA/Version.h>
#include <LUFA/Drivers/Board/LEDs.h>
diff --git a/Projects/XPLAINBridge/XPLAINBridge.txt b/Projects/XPLAINBridge/XPLAINBridge.txt
index e71d06ad7..0d02392bb 100644
--- a/Projects/XPLAINBridge/XPLAINBridge.txt
+++ b/Projects/XPLAINBridge/XPLAINBridge.txt
@@ -80,13 +80,13 @@
* </tr>
* <tr>
* <td>LIBUSB_DRIVER_COMPAT</td>
- * <td>Makefile LUFA_OPTS</td>
+ * <td>AppConfig.h</td>
* <td>Define to switch to a non-standard endpoint scheme, breaking compatibility with AVRStudio under Windows but making
* the code compatible with software such as avrdude (all platforms) that use the libUSB driver.</td>
* </tr>
* <tr>
* <td>FIRMWARE_VERSION_MINOR</td>
- * <td>Makefile LUFA_OPTS</td>
+ * <td>AppConfig.h</td>
* <td>Define to set the minor firmware revision nunber reported to the host on request. By default this will use a firmware version compatible
* with the latest Atmel IDE version, however if desired the reported minor value can be adjusted here.</td>
* </tr>
diff --git a/Projects/XPLAINBridge/makefile b/Projects/XPLAINBridge/makefile
index fec131b4f..63c474eb7 100644
--- a/Projects/XPLAINBridge/makefile
+++ b/Projects/XPLAINBridge/makefile
@@ -124,25 +124,7 @@ AVRISP_PATH = ../AVRISP-MKII
# LUFA library compile-time options and predefined tokens
-LUFA_OPTS = -D USB_DEVICE_ONLY
-LUFA_OPTS += -D DEVICE_STATE_AS_GPIOR=0
-LUFA_OPTS += -D ORDERED_EP_CONFIG
-LUFA_OPTS += -D FIXED_CONTROL_ENDPOINT_SIZE=16
-LUFA_OPTS += -D FIXED_NUM_CONFIGURATIONS=1
-LUFA_OPTS += -D USE_FLASH_DESCRIPTORS
-LUFA_OPTS += -D USE_STATIC_OPTIONS="(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)"
-LUFA_OPTS += -D NO_DEVICE_REMOTE_WAKEUP
-LUFA_OPTS += -D NO_DEVICE_SELF_POWER
-
-LUFA_OPTS += -D AUX_LINE_PORT=PORTB
-LUFA_OPTS += -D AUX_LINE_PIN=PINB
-LUFA_OPTS += -D AUX_LINE_DDR=DDRB
-LUFA_OPTS += -D AUX_LINE_MASK="(1 << 4)"
-LUFA_OPTS += -D VTARGET_ADC_CHANNEL=2
-LUFA_OPTS += -D VTARGET_REF_VOLTS=3.3
-LUFA_OPTS += -D VTARGET_SCALE_FACTOR=2
-#LUFA_OPTS += -D LIBUSB_DRIVER_COMPAT
-#LUFA_OPTS += -D FIRMWARE_VERSION_MINOR=0x11
+LUFA_OPTS = -D USE_LUFA_CONFIG_HEADER
# Create the LUFA source path variables by including the LUFA root makefile
include $(LUFA_PATH)/LUFA/makefile
@@ -196,7 +178,7 @@ DEBUG = dwarf-2
# Each directory must be seperated by a space.
# Use forward slashes for directory separators.
# For a directory that has spaces, enclose it in quotes.
-EXTRAINCDIRS = $(LUFA_PATH)/ $(AVRISP_PATH)/
+EXTRAINCDIRS = $(LUFA_PATH)/ $(AVRISP_PATH)/ Config/
# Compiler flag to set the C Standard level.