From e9e6730d4999bea6e0eaefc2fce062ef090388b8 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Sun, 13 May 2012 21:01:23 +0000 Subject: AppConfigHeaders: Move out the last of the demo/app configurations into new AppConfig.h header files. --- .../ClassDriver/AudioOutputHost/AudioOutputHost.c | 3 ++ .../ClassDriver/AudioOutputHost/AudioOutputHost.h | 14 +----- .../AudioOutputHost/AudioOutputHost.txt | 9 +++- .../ClassDriver/AudioOutputHost/Config/AppConfig.h | 51 ++++++++++++++++++++++ .../LowLevel/AudioOutputHost/AudioOutputHost.c | 3 ++ .../LowLevel/AudioOutputHost/AudioOutputHost.h | 13 +----- .../LowLevel/AudioOutputHost/AudioOutputHost.txt | 9 +++- .../LowLevel/AudioOutputHost/Config/AppConfig.h | 51 ++++++++++++++++++++++ 8 files changed, 125 insertions(+), 28 deletions(-) create mode 100644 Demos/Host/ClassDriver/AudioOutputHost/Config/AppConfig.h create mode 100644 Demos/Host/LowLevel/AudioOutputHost/Config/AppConfig.h (limited to 'Demos/Host') diff --git a/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.c b/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.c index 833be1b2c..5f00568f5 100644 --- a/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.c +++ b/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.c @@ -128,6 +128,9 @@ void SetupHardware(void) /* Create a stdio stream for the serial port for stdin and stdout */ Serial_CreateStream(NULL); + + /* Start the ADC conversion in free running mode */ + ADC_StartReading(ADC_REFERENCE_AVCC | ADC_RIGHT_ADJUSTED | ADC_GET_CHANNEL_MASK(MIC_IN_ADC_CHANNEL)); } /** Event handler for the USB_DeviceAttached event. This indicates that a device has been attached to the host, and diff --git a/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.h b/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.h index 41a4e9f1d..fa4801bfb 100644 --- a/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.h +++ b/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.h @@ -51,26 +51,16 @@ #include #include #include + + #include "Config/AppConfig.h" /* Macros: */ - /** ADC channel number for the microphone input. */ - #define MIC_IN_ADC_CHANNEL 2 - - /** ADC channel MUX mask for the microphone input. */ - #define MIC_IN_ADC_MUX_MASK ADC_CHANNEL2 - /** Maximum audio sample value for the microphone input. */ #define SAMPLE_MAX_RANGE 0xFFFF /** Maximum ADC range for the microphone input. */ #define ADC_MAX_RANGE 0x3FF - /** Defined to indicate that the microphone input voltage is biased to half the ADC reference voltage. */ - #define MICROPHONE_BIASED_TO_HALF_RAIL - - /** Defined to generate test tone when a button is pressed, rather than use a microphone for audio samples. */ - #define USE_TEST_TONE - /** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ #define LEDMASK_USB_NOTREADY LEDS_LED1 diff --git a/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.txt b/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.txt index c28b61e44..b2cd2a8c8 100644 --- a/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.txt +++ b/Demos/Host/ClassDriver/AudioOutputHost/AudioOutputHost.txt @@ -63,14 +63,19 @@ * Description: * * + * MIC_IN_ADC_CHANNEL + * AppConfig.h + * Sets the ADC channel used by the demo for the input audio samples from an attached microphone. + * + * * USE_TEST_TONE - * AudioOutputHost.h + * AppConfig.h * When defined, this alters the demo to produce a square wave test tone when the first board button is pressed * instead of sampling the board microphone. * * * MICROPHONE_BIASED_TO_HALF_RAIL - * AudioOutputHost.h + * AppConfig.h * When defined, this alters the demo so that the half VCC bias of the microphone input is subtracted. * * diff --git a/Demos/Host/ClassDriver/AudioOutputHost/Config/AppConfig.h b/Demos/Host/ClassDriver/AudioOutputHost/Config/AppConfig.h new file mode 100644 index 000000000..7702e259a --- /dev/null +++ b/Demos/Host/ClassDriver/AudioOutputHost/Config/AppConfig.h @@ -0,0 +1,51 @@ +/* + 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 MIC_IN_ADC_CHANNEL 2 + + #define MICROPHONE_BIASED_TO_HALF_RAIL + #define USE_TEST_TONE + +#endif \ No newline at end of file diff --git a/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.c b/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.c index a1f255f16..eddd38f97 100644 --- a/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.c +++ b/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.c @@ -74,6 +74,9 @@ void SetupHardware(void) /* Create a stdio stream for the serial port for stdin and stdout */ Serial_CreateStream(NULL); + + /* Start the ADC conversion in free running mode */ + ADC_StartReading(ADC_REFERENCE_AVCC | ADC_RIGHT_ADJUSTED | ADC_GET_CHANNEL_MASK(MIC_IN_ADC_CHANNEL)); } /** Event handler for the USB_DeviceAttached event. This indicates that a device has been attached to the host, and diff --git a/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.h b/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.h index 7f980cd8b..2c475821c 100644 --- a/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.h +++ b/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.h @@ -53,26 +53,15 @@ #include #include "ConfigDescriptor.h" + #include "Config/AppConfig.h" /* Macros: */ - /** ADC channel number for the microphone input. */ - #define MIC_IN_ADC_CHANNEL 2 - - /** ADC channel MUX mask for the microphone input. */ - #define MIC_IN_ADC_MUX_MASK ADC_CHANNEL2 - /** Maximum audio sample value for the microphone input. */ #define SAMPLE_MAX_RANGE 0xFFFF /** Maximum ADC range for the microphone input. */ #define ADC_MAX_RANGE 0x3FF - /** Defined to indicate that the microphone input voltage is biased to half the ADC reference voltage. */ - #define MICROPHONE_BIASED_TO_HALF_RAIL - - /** Defined to generate test tone when a button is pressed, rather than use a microphone for audio samples. */ - #define USE_TEST_TONE - /** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ #define LEDMASK_USB_NOTREADY LEDS_LED1 diff --git a/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.txt b/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.txt index c28b61e44..b2cd2a8c8 100644 --- a/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.txt +++ b/Demos/Host/LowLevel/AudioOutputHost/AudioOutputHost.txt @@ -63,14 +63,19 @@ * Description: * * + * MIC_IN_ADC_CHANNEL + * AppConfig.h + * Sets the ADC channel used by the demo for the input audio samples from an attached microphone. + * + * * USE_TEST_TONE - * AudioOutputHost.h + * AppConfig.h * When defined, this alters the demo to produce a square wave test tone when the first board button is pressed * instead of sampling the board microphone. * * * MICROPHONE_BIASED_TO_HALF_RAIL - * AudioOutputHost.h + * AppConfig.h * When defined, this alters the demo so that the half VCC bias of the microphone input is subtracted. * * diff --git a/Demos/Host/LowLevel/AudioOutputHost/Config/AppConfig.h b/Demos/Host/LowLevel/AudioOutputHost/Config/AppConfig.h new file mode 100644 index 000000000..7702e259a --- /dev/null +++ b/Demos/Host/LowLevel/AudioOutputHost/Config/AppConfig.h @@ -0,0 +1,51 @@ +/* + 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 MIC_IN_ADC_CHANNEL 2 + + #define MICROPHONE_BIASED_TO_HALF_RAIL + #define USE_TEST_TONE + +#endif \ No newline at end of file -- cgit v1.2.3