diff options
Diffstat (limited to 'Projects/Magstripe')
-rw-r--r-- | Projects/Magstripe/Config/AppConfig.h | 57 | ||||
-rw-r--r-- | Projects/Magstripe/Config/LUFAConfig.h | 93 | ||||
-rw-r--r-- | Projects/Magstripe/Lib/MagstripeHW.h | 1 | ||||
-rw-r--r-- | Projects/Magstripe/Magstripe.h | 1 | ||||
-rw-r--r-- | Projects/Magstripe/Magstripe.txt | 20 | ||||
-rw-r--r-- | Projects/Magstripe/makefile | 21 |
6 files changed, 164 insertions, 29 deletions
diff --git a/Projects/Magstripe/Config/AppConfig.h b/Projects/Magstripe/Config/AppConfig.h new file mode 100644 index 000000000..3fe5456f0 --- /dev/null +++ b/Projects/Magstripe/Config/AppConfig.h @@ -0,0 +1,57 @@ +/* + 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 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 + * \ref Sec_Options section of the application documentation. + */ + +#ifndef _APP_CONFIG_H_ +#define _APP_CONFIG_H_ + + #define MAG_T1_CLOCK (1 << 0) + #define MAG_T1_DATA (1 << 1) + #define MAG_T2_CLOCK (1 << 2) + #define MAG_T2_DATA (1 << 3) + #define MAG_T3_CLOCK (1 << 4) + #define MAG_T3_DATA (1 << 5) + #define MAG_CARDPRESENT (1 << 6) + + #define MAG_PORT PORTC + #define MAG_PIN PINC + #define MAG_DDR DDRC + +#endif
\ No newline at end of file diff --git a/Projects/Magstripe/Config/LUFAConfig.h b/Projects/Magstripe/Config/LUFAConfig.h new file mode 100644 index 000000000..095bac919 --- /dev/null +++ b/Projects/Magstripe/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 8 + #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/Magstripe/Lib/MagstripeHW.h b/Projects/Magstripe/Lib/MagstripeHW.h index ef5e90849..177e26b01 100644 --- a/Projects/Magstripe/Lib/MagstripeHW.h +++ b/Projects/Magstripe/Lib/MagstripeHW.h @@ -65,6 +65,7 @@ #include <avr/io.h> #include <LUFA/Common/Common.h> + #include "Config/AppConfig.h" /* Private Interface - For use in library only: */ /* Macros: */ diff --git a/Projects/Magstripe/Magstripe.h b/Projects/Magstripe/Magstripe.h index 6e73dcb5b..c7e9d0525 100644 --- a/Projects/Magstripe/Magstripe.h +++ b/Projects/Magstripe/Magstripe.h @@ -46,6 +46,7 @@ #include "Descriptors.h" #include "Lib/MagstripeHW.h" #include "Lib/CircularBitBuffer.h" + #include "Config/AppConfig.h" #include <LUFA/Version.h> #include <LUFA/Drivers/USB/USB.h> diff --git a/Projects/Magstripe/Magstripe.txt b/Projects/Magstripe/Magstripe.txt index 34825ae65..d26b0edcd 100644 --- a/Projects/Magstripe/Magstripe.txt +++ b/Projects/Magstripe/Magstripe.txt @@ -110,52 +110,52 @@ * </tr> * <tr> * <td>MAG_T1_CLOCK</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's CLOCK line for the reader's track 1 output.</td> * </tr> * <tr> * <td>MAG_T1_DATA</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's DATA line for the reader's track 1 output.</td> * </tr> * <tr> * <td>MAG_T2_CLOCK</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's CLOCK line for the reader's track 2 output.</td> * </tr> * <tr> * <td>MAG_T2_DATA</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's DATA line for the reader's track 2 output.</td> * </tr> * <tr> * <td>MAG_T3_CLOCK</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's CLOCK line for the reader's track 3 output.</td> * </tr> * <tr> * <td>MAG_T3_DATA</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's DATA line for the reader's track 3 output.</td> * </tr> * <tr> * <td>MAG_CARDPRESENT</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>Mask for the magnetic card reader's card detection output.</td> * </tr> * <tr> * <td>MAG_PIN</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>PIN register that the magnetic card reader device is attached to.</td> * </tr> * <tr> * <td>MAG_PORT</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>PORT register that the magnetic card reader device is attached to.</td> * </tr> * <tr> * <td>MAG_DDR</td> - * <td>Makefile LUFA_OPTS</td> + * <td>AppConfig.h</td> * <td>DDR register that the magnetic card reader device is attached to.</td> * </tr> * </table> diff --git a/Projects/Magstripe/makefile b/Projects/Magstripe/makefile index cbf2197b7..fda76eb25 100644 --- a/Projects/Magstripe/makefile +++ b/Projects/Magstripe/makefile @@ -120,24 +120,7 @@ LUFA_PATH = ../.. # 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=8 -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 MAG_T1_CLOCK="(1 << 0)" -LUFA_OPTS += -D MAG_T1_DATA="(1 << 1)" -LUFA_OPTS += -D MAG_T2_CLOCK="(1 << 2)" -LUFA_OPTS += -D MAG_T2_DATA="(1 << 3)" -LUFA_OPTS += -D MAG_T3_CLOCK="(1 << 4)" -LUFA_OPTS += -D MAG_T3_DATA="(1 << 5)" -LUFA_OPTS += -D MAG_CARDPRESENT="(1 << 6)" -LUFA_OPTS += -D MAG_PIN=PINB -LUFA_OPTS += -D MAG_DDR=DDRB -LUFA_OPTS += -D MAG_PORT=PORTB +LUFA_OPTS = -D USE_LUFA_CONFIG_HEADER # Create the LUFA source path variables by including the LUFA root makefile @@ -183,7 +166,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)/ +EXTRAINCDIRS = $(LUFA_PATH)/ Config/ # Compiler flag to set the C Standard level. |