From a05dd562395a549db2113cd1bc570ab9b68fee6e Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Sun, 27 Jan 2013 15:28:17 +0000 Subject: [PATCH] Add code template for the new board hardware information driver. --- BuildTests/BoardDriverTest/Board/Board.h | 82 ++++++++++++++++++++++++ BuildTests/BoardDriverTest/Test.c | 17 ++--- LUFA/CodeTemplates/DriverStubs/Board.h | 82 ++++++++++++++++++++++++ 3 files changed, 173 insertions(+), 8 deletions(-) create mode 100644 BuildTests/BoardDriverTest/Board/Board.h create mode 100644 LUFA/CodeTemplates/DriverStubs/Board.h diff --git a/BuildTests/BoardDriverTest/Board/Board.h b/BuildTests/BoardDriverTest/Board/Board.h new file mode 100644 index 0000000000..0303a9a3e6 --- /dev/null +++ b/BuildTests/BoardDriverTest/Board/Board.h @@ -0,0 +1,82 @@ +/* + LUFA Library + Copyright (C) Dean Camera, 2013. + + dean [at] fourwalledcubicle [dot] com + www.lufa-lib.org +*/ + +/* + Copyright 2013 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 disclaims 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 Custom Board Hardware Information Driver (Template) + * + * This is a stub driver header file, for implementing custom board + * layout hardware with compatible LUFA board specific drivers. If + * the library is configured to use the BOARD_USER board mode, this + * driver file should be completed and copied into the "/Board/" folder + * inside the application's folder. + * + * This stub is for the board-specific component of the LUFA Board Hardware + * information driver. + */ + +#ifndef __BOARD_USER_H__ +#define __BOARD_USER_H__ + + /* Includes: */ + // TODO: Add any required includes here + + /* Enable C linkage for C++ Compilers: */ + #if defined(__cplusplus) + extern "C" { + #endif + + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_BOARD_H) + #error Do not include this file directly. Include LUFA/Drivers/Board/Board.h instead. + #endif + + /* Public Interface - May be used in end-application: */ + /* Macros: */ + /** Indicates the board has a hardware Buttons mounted if defined. */ +// #define BOARD_HAS_BUTTONS + + /** Indicates the board has a hardware Dataflash mounted if defined. */ +// #define BOARD_HAS_DATAFLASH + + /** Indicates the board has a hardware Joystick mounted if defined. */ +// #define BOARD_HAS_JOYSTICK + + /** Indicates the board has a hardware LEDs mounted if defined. */ +// #define BOARD_HAS_LEDS + + /* Disable C linkage for C++ Compilers: */ + #if defined(__cplusplus) + } + #endif + +#endif + +/** @} */ + diff --git a/BuildTests/BoardDriverTest/Test.c b/BuildTests/BoardDriverTest/Test.c index 5c878d2d15..c9f836eaab 100644 --- a/BuildTests/BoardDriverTest/Test.c +++ b/BuildTests/BoardDriverTest/Test.c @@ -29,6 +29,7 @@ */ #include +#include #include #include #include @@ -37,18 +38,18 @@ int main(void) { uint_reg_t Dummy; - + /* ============================= * Buttons Compile Check - * ============================= */ + * ============================= */ Buttons_Init(); // cppcheck-suppress redundantAssignment Dummy = Buttons_GetStatus(); Buttons_Disable(); - + /* ============================= * Dataflash Compile Check - * ============================= */ + * ============================= */ Dataflash_Init(); Dataflash_TransferByte(0); Dataflash_SendByte(0); @@ -65,7 +66,7 @@ int main(void) /* ============================= * LEDs Compile Check - * ============================= */ + * ============================= */ LEDs_Init(); LEDs_TurnOnLEDs(LEDS_ALL_LEDS); LEDs_TurnOffLEDs(LEDS_ALL_LEDS); @@ -75,15 +76,15 @@ int main(void) // cppcheck-suppress redundantAssignment Dummy = LEDs_GetLEDs(); LEDs_Disable(); - + /* ============================= * Joystick Compile Check - * ============================= */ + * ============================= */ Joystick_Init(); // cppcheck-suppress redundantAssignment Dummy = Joystick_GetStatus(); Joystick_Disable(); - + (void)Dummy; } diff --git a/LUFA/CodeTemplates/DriverStubs/Board.h b/LUFA/CodeTemplates/DriverStubs/Board.h new file mode 100644 index 0000000000..0303a9a3e6 --- /dev/null +++ b/LUFA/CodeTemplates/DriverStubs/Board.h @@ -0,0 +1,82 @@ +/* + LUFA Library + Copyright (C) Dean Camera, 2013. + + dean [at] fourwalledcubicle [dot] com + www.lufa-lib.org +*/ + +/* + Copyright 2013 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 disclaims 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 Custom Board Hardware Information Driver (Template) + * + * This is a stub driver header file, for implementing custom board + * layout hardware with compatible LUFA board specific drivers. If + * the library is configured to use the BOARD_USER board mode, this + * driver file should be completed and copied into the "/Board/" folder + * inside the application's folder. + * + * This stub is for the board-specific component of the LUFA Board Hardware + * information driver. + */ + +#ifndef __BOARD_USER_H__ +#define __BOARD_USER_H__ + + /* Includes: */ + // TODO: Add any required includes here + + /* Enable C linkage for C++ Compilers: */ + #if defined(__cplusplus) + extern "C" { + #endif + + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_BOARD_H) + #error Do not include this file directly. Include LUFA/Drivers/Board/Board.h instead. + #endif + + /* Public Interface - May be used in end-application: */ + /* Macros: */ + /** Indicates the board has a hardware Buttons mounted if defined. */ +// #define BOARD_HAS_BUTTONS + + /** Indicates the board has a hardware Dataflash mounted if defined. */ +// #define BOARD_HAS_DATAFLASH + + /** Indicates the board has a hardware Joystick mounted if defined. */ +// #define BOARD_HAS_JOYSTICK + + /** Indicates the board has a hardware LEDs mounted if defined. */ +// #define BOARD_HAS_LEDS + + /* Disable C linkage for C++ Compilers: */ + #if defined(__cplusplus) + } + #endif + +#endif + +/** @} */ +