From 32830a2b827cbeb40284c5ea379381948fb9113e Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Sun, 16 Jan 2011 16:13:22 +0000 Subject: Added new ADC_GET_CHANNEL_MASK() convenience macro to the ADC driver. --- LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'LUFA/Drivers/Peripheral') diff --git a/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h b/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h index 9d6e91bc8..5f4b034ef 100644 --- a/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h +++ b/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h @@ -90,6 +90,13 @@ #error Do not include this file directly. Include LUFA/Drivers/Peripheral/ADC.h instead. #endif + /* Private Interface - For use in library only: */ + #if !defined(__DOXYGEN__) + /* Macros: */ + #define _ADC_GET_MUX_MASK2(y) ADC_CHANNEL ## y + #define _ADC_GET_MUX_MASK(y) _ADC_GET_MUX_MASK2(y) + #endif + /* Public Interface - May be used in end-application: */ /* Macros: */ /** \name ADC Reference Configuration Masks */ @@ -235,6 +242,15 @@ */ #define ADC_INT_TEMP_SENS ((1 << 8) | (0x07 << MUX0)) #endif + + /** Retrieves the ADC MUX mask for the given ADC channel number. + * + * \note This macro will only work correctly on channel numbers that are compile-time + * constants defined by the preprocessor. + * + * \param[in] Channel Index of the ADC channel whose MUX mask is to be retrieved. + */ + #define ADC_GET_CHANNEL_MASK(Channel) _ADC_GET_MUX_MASK(Channel) //@} /* Inline Functions: */ -- cgit v1.2.3