AT90USBXXX6 and AT90USBXXX7 Models
[ADC Driver - LUFA/Drivers/Peripheral/ADC.h]


Defines

#define ADC_REFERENCE_AREF   0
#define ADC_REFERENCE_AVCC   (1 << REFS0)
#define ADC_REFERENCE_INT2560MV   ((1 << REFS1)| (1 << REFS0))
#define ADC_LEFT_ADJUSTED   (1 << ADLAR)
#define ADC_RIGHT_ADJUSTED   (0 << ADLAR)
#define ADC_FREE_RUNNING   (1 << ADATE)
#define ADC_SINGLE_CONVERSION   (0 << ADATE)
#define ADC_PRESCALE_2   (1 << ADPS0)
#define ADC_PRESCALE_4   (1 << ADPS1)
#define ADC_PRESCALE_8   ((1 << ADPS0) | (1 << ADPS1))
#define ADC_PRESCALE_16   (1 << ADPS2)
#define ADC_PRESCALE_32   ((1 << ADPS2) | (1 << ADPS0))
#define ADC_PRESCALE_64   ((1 << ADPS2) | (1 << ADPS1))
#define ADC_PRESCALE_128   ((1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0))

Functions

static void ADC_Init (uint8_t Mode)
static void ADC_Off (void)
static bool ADC_GetStatus (void)
static bool ADC_IsReadingComplete (void)
static uint16_t ADC_GetResult (void)
static void ADC_SetupChannel (const uint8_t Channel)
static void ADC_StartReading (const uint8_t MUXMask)
static uint16_t ADC_GetChannelReading (const uint8_t MUXMask) ATTR_WARN_UNUSED_RESULT

Define Documentation

#define ADC_FREE_RUNNING   (1 << ADATE)

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.

#define ADC_LEFT_ADJUSTED   (1 << ADLAR)

Left-adjusts the 10-bit ADC result, so that the upper 8 bits of the value returned by the ADC_GetResult() macro contain the 8 most significant bits of the result.

#define ADC_PRESCALE_128   ((1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0))

Sets the ADC input clock to prescale by a factor of 128 the AVR's system clock.

#define ADC_PRESCALE_16   (1 << ADPS2)

Sets the ADC input clock to prescale by a factor of 16 the AVR's system clock.

#define ADC_PRESCALE_2   (1 << ADPS0)

Sets the ADC input clock to prescale by a factor of 2 the AVR's system clock.

#define ADC_PRESCALE_32   ((1 << ADPS2) | (1 << ADPS0))

Sets the ADC input clock to prescale by a factor of 32 the AVR's system clock.

#define ADC_PRESCALE_4   (1 << ADPS1)

Sets the ADC input clock to prescale by a factor of 4 the AVR's system clock.

#define ADC_PRESCALE_64   ((1 << ADPS2) | (1 << ADPS1))

Sets the ADC input clock to prescale by a factor of 64 the AVR's system clock.

#define ADC_PRESCALE_8   ((1 << ADPS0) | (1 << ADPS1))

Sets the ADC input clock to prescale by a factor of 8 the AVR's system clock.

#define ADC_REFERENCE_AREF   0

Reference mask, for using the voltage present at the AVR's AREF pin for the ADC reference.

#define ADC_REFERENCE_AVCC   (1 << REFS0)

Reference mask, for using the voltage present at the AVR's AVCC pin for the ADC reference.

#define ADC_REFERENCE_INT2560MV   ((1 << REFS1)| (1 << REFS0))

Reference mask, for using the internally generated 2.56V reference voltage as the ADC reference.

#define ADC_RIGHT_ADJUSTED   (0 << ADLAR)

Right-adjusts the 10-bit ADC result, so that the lower 8 bits of the value returned by the ADC_GetResult() macro contain the 8 least significant bits of the result.

#define ADC_SINGLE_CONVERSION   (0 << ADATE)

Sets the ADC mode to single conversion, so that only a single conversion will take place before the ADC returns to idle.


Function Documentation

static uint16_t ADC_GetChannelReading ( const uint8_t  MUXMask  )  [inline, static]

Performs a complete single reading from channel, including a polling spinloop to wait for the conversion to complete, and the returning of the converted value.

Parameters:
[in] MUXMask Mask comprising of an ADC channel number, reference mask and adjustment mask

static uint16_t ADC_GetResult ( void   )  [inline, static]

Retrieves the conversion value of the last completed ADC conversion.

Returns:
The result of the last ADC conversion

static bool ADC_GetStatus ( void   )  [inline, static]

Indicates if the ADC is currently enabled.

Returns:
Boolean true if the ADC subsystem is currently enabled, false otherwise.

static void ADC_Init ( uint8_t  Mode  )  [inline, static]

Initializes the ADC, ready for conversions. This must be called before any other ADC operations. The "mode" parameter should be a mask comprised of a conversion mode (free running or single) and prescaler masks.

Parameters:
[in] Mode Mask of ADC settings, including adjustment, prescale, mode and reference

static bool ADC_IsReadingComplete ( void   )  [inline, static]

Indicates if the current ADC conversion is completed, or still in progress.

Returns:
Boolean false if the reading is still taking place, or true if the conversion is complete and ready to be read out with ADC_GetResult()

static void ADC_Off ( void   )  [inline, static]

Turns off the ADC. If this is called, any further ADC operations will require a call to ADC_Init() before the ADC can be used again.

static void ADC_SetupChannel ( const uint8_t  Channel  )  [inline, static]

Configures the given ADC channel, ready for ADC conversions. This function sets the associated port pin as an input and disables the digital portion of the I/O to reduce power consumption.

Parameters:
[in] Channel ADC channel number to set up for conversions

static void ADC_StartReading ( const uint8_t  MUXMask  )  [inline, static]

Starts the reading of the given channel, but does not wait until the conversion has completed. Once executed, the conversion status can be determined via the ADC_IsReadingComplete() macro and the result read via the ADC_GetResult() macro.

Parameters:
[in] MUXMask Mask comprising of an ADC channel number, reference mask and adjustment mask


Generated on Sun Aug 9 19:53:12 2009 for LUFA (Formerly MyUSB) Library by  doxygen 1.5.9