Add script reading bootloader flags
[pub/lufa.git] / LUFA / Drivers / Peripheral / AVR8 / ADC_AVR8.h
index 1c3b60a..f81484d 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2013.
+     Copyright (C) Dean Camera, 2021.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2013  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2021  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
 /** \ingroup Group_ADC
  *  \defgroup Group_ADC_AVR8 ADC Peripheral Driver (AVR8)
  *
- *  \section Sec_ModDescription Module Description
+ *  \section Sec_ADC_AVR8_ModDescription Module Description
  *  On-chip Analogue-to-Digital converter (ADC) driver for supported U4, U6 and U7 model AVRs that contain an ADC
  *  peripheral internally.
  *
  *  \note This file should not be included directly. It is automatically included as needed by the ADC driver
  *        dispatch header located in LUFA/Drivers/Peripheral/ADC.h.
  *
- *  \section Sec_ExampleUsage Example Usage
+ *  \section Sec_ADC_AVR8_ExampleUsage Example Usage
  *  The following snippet is an example of how this module may be used within a typical
  *  application.
  *
                        #error The ADC peripheral driver is not currently available for your selected microcontroller model.
                #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 */
-                       //@{
+                       /**@{*/
                        /** Reference mask, for using the voltage present at the AVR's AREF pin for the ADC reference. */
                        #define ADC_REFERENCE_AREF              0
 
 
                        /** Reference mask, for using the internally generated 2.56V reference voltage as the ADC reference. */
                        #define ADC_REFERENCE_INT2560MV         ((1 << REFS1) | (1 << REFS0))
-                       //@}
+                       /**@}*/
 
                        /** \name ADC Result Adjustment Configuration Masks */
-                       //@{
+                       /**@{*/
                        /** Left-adjusts the 10-bit ADC result, so that the upper 8 bits of the value returned by the
                         *  \ref ADC_GetResult() macro contain the 8 most significant bits of the result.
                         */
                         *  \ref ADC_GetResult() macro contain the 8 least significant bits of the result.
                         */
                        #define ADC_RIGHT_ADJUSTED              (0 << ADLAR)
-                       //@}
+                       /**@}*/
 
                        /** \name ADC Mode Configuration Masks */
-                       //@{
+                       /**@{*/
                        /** Sets the ADC mode to free running, so that conversions take place continuously as fast as the ADC
                         *  is capable of at the given input clock speed.
                         */
                         *  the ADC returns to idle.
                         */
                        #define ADC_SINGLE_CONVERSION           (0 << ADATE)
-                       //@}
+                       /**@}*/
 
                        /** \name ADC Prescaler Configuration Masks */
-                       //@{
+                       /**@{*/
                        /** Sets the ADC input clock to prescale by a factor of 2 the AVR's system clock. */
                        #define ADC_PRESCALE_2                  (1 << ADPS0)
 
 
                        /** Sets the ADC input clock to prescale by a factor of 128 the AVR's system clock. */
                        #define ADC_PRESCALE_128                ((1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0))
-                       //@}
+                       /**@}*/
 
                        /** \name ADC MUX Masks */
-                       //@{
+                       /**@{*/
                        /** MUX mask define for the ADC0 channel of the ADC. See \ref ADC_StartReading() and \ref ADC_GetChannelReading(). */
                        #define ADC_CHANNEL0                    (0x00 << MUX0)
 
                         *
                         *  \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)
-                       //@}
+                       #define ADC_GET_CHANNEL_MASK(Channel)   CONCAT_EXPANDED(ADC_CHANNEL, Channel)
+                       /**@}*/
 
                /* Inline Functions: */
                        /** Configures the given ADC channel, ready for ADC conversions. This function sets the