![]() |
enum | adc_channel_type { ADC0 = 0, ADC1 = 1, ADC2 = 2, ADC3 = 3, ADC4 = 4, ADC5 = 5, ADC6 = 6, ADC7 = 7, ADC0 = 0, ADC1 = 1, ADC2 = 2, ADC3 = 3, ADC4 = 4, ADC5 = 5, ADC6 = 6, ADC7 = 7, ADC_MAX_CHANNEL = 8 } |
enum declaring possible ADC channels More... | |
Defines | |
#define | ADC_PRESCALE_DIV2 0x00 |
0x01,0x00 -> CPU clk/2 | |
#define | ADC_PRESCALE_DIV4 0x02 |
0x02 -> CPU clk/4 | |
#define | ADC_PRESCALE_DIV8 0x03 |
0x03 -> CPU clk/8 | |
#define | ADC_PRESCALE_DIV16 0x04 |
0x04 -> CPU clk/16 | |
#define | ADC_PRESCALE_DIV32 0x05 |
0x05 -> CPU clk/32 | |
#define | ADC_PRESCALE_DIV64 0x06 |
0x06 -> CPU clk/64 | |
#define | ADC_PRESCALE_DIV128 0x07 |
0x07 -> CPU clk/128 | |
#define | ADC_INITIAL_CHANNEL ADC0 |
#define | ADC_INITIAL_REF AVCC |
#define | ADC_INITIAL_MODE SINGLE_CONVERSION |
#define | ADC_INITIAL_PRESCALE ADC_PRESCALE_DIV64 |
#define | ADC_BUF_SIZE 16 |
#define | AVR_SLEEP_CTRL_REG MCUCR |
#define | _adc_buf_head ADC_BUF_SIZE |
#define | _adc_buf_tail ADC_BUF_SIZE+1 |
Typedefs | |
typedef enum adc_ref_type | adc_ref_t |
typedef enum adc_mode_type | adc_mode_t |
typedef enum adc_channel_type | adc_channel_t |
Enumerations | |
enum | adc_ref_type { AVCC = 0, AREF, INTERNAL_256 } |
enum | adc_mode_type { ADC_OFF, FREE_RUNNING, SINGLE_CONVERSION, ADC_OFF, FREE_RUNNING_T0, FREE_RUNNING_T1, FREE_RUNNING_T2, FREE_RUNNING_EXT, SINGLE_CONVERSION } |
Functions | |
void | ADCInit (void) |
Initialize the adc to the configured default values and enable interrupt. | |
void | ADCSetRef (adc_ref_t reference) |
void | ADCSetMode (adc_mode_t mode) |
Sets the data aquisition mode for the adc. | |
u_char | ADCSetPrescale (u_char prescalar) |
void | ADCSetChannel (adc_channel_t adc_channel) |
void | ADCBufferFlush (void) |
void | ADCStartConversion (void) |
Start conversion. | |
void | ADCStartLowNoiseConversion (void) |
void | ADCStopConversion (void) |
u_char | ADCRead (u_short *value) |
adc_mode_t | ADCGetMode (void) |
int | ADCBufRead (u_short *buf, u_short *read) |
int | ADCBufWrite (u_short *buf, u_short *write) |
void | ADCBufInit (u_short *buf) |
Variables | |
u_char | adc_sleep_mode = SLEEP_MODE_ADC |
adc_mode_t | current_mode = ADC_OFF |
u_short * | ADC_buffer = NULL |
#define ADC_PRESCALE_DIV2 0x00 |
#define ADC_PRESCALE_DIV4 0x02 |
#define ADC_PRESCALE_DIV8 0x03 |
#define ADC_PRESCALE_DIV16 0x04 |
#define ADC_PRESCALE_DIV32 0x05 |
#define ADC_PRESCALE_DIV64 0x06 |
#define ADC_PRESCALE_DIV128 0x07 |
#define ADC_INITIAL_MODE SINGLE_CONVERSION |
#define ADC_INITIAL_PRESCALE ADC_PRESCALE_DIV64 |
#define ADC_BUF_SIZE 16 |
#define AVR_SLEEP_CTRL_REG MCUCR |
#define _adc_buf_head ADC_BUF_SIZE |
Definition at line 138 of file adc.c.
Referenced by ADCBufInit(), ADCBufRead(), ADCBufWrite(), and ADCInit().
#define _adc_buf_tail ADC_BUF_SIZE+1 |
Definition at line 139 of file adc.c.
Referenced by ADCBufInit(), ADCBufRead(), ADCBufWrite(), and ADCInit().
typedef enum adc_ref_type adc_ref_t |
typedef enum adc_mode_type adc_mode_t |
typedef enum adc_channel_type adc_channel_t |
enum adc_ref_type |
enum adc_mode_type |
enum adc_channel_type |
void ADCInit | ( | void | ) |
Initialize the adc to the configured default values and enable interrupt.
Definition at line 187 of file adc.c.
References ADC_BUF_SIZE, ADC_buffer, ADC_INITIAL_CHANNEL, ADC_INITIAL_MODE, ADC_INITIAL_PRESCALE, ADC_INITIAL_REF, ADCBufInit(), ADCSetChannel(), ADCSetMode(), ADCSetPrescale(), ADCSetRef(), NutHeapAlloc(), NutRegisterIrqHandler(), sbi, and sig_ADC.
void ADCSetRef | ( | adc_ref_t | reference | ) |
Definition at line 210 of file adc.c.
References ADCStopConversion(), AREF, AVCC, cbi, INTERNAL_256, and sbi.
Referenced by ADCInit().
void ADCSetMode | ( | TADCMode | mode | ) |
Sets the data aquisition mode for the adc.
mode | Mode to set |
Definition at line 233 of file adc.c.
References ADC_OFF, ADCStopConversion(), cbi, current_mode, FREE_RUNNING, sbi, and SINGLE_CONVERSION.
Referenced by ADCInit(), and ADCStartLowNoiseConversion().
Definition at line 250 of file adc.c.
References ADC_PRESCALE_DIV128, ADC_PRESCALE_DIV16, ADC_PRESCALE_DIV2, ADC_PRESCALE_DIV32, ADC_PRESCALE_DIV4, ADC_PRESCALE_DIV64, ADC_PRESCALE_DIV8, ADCStopConversion(), cbi, and sbi.
Referenced by ADCInit().
void ADCSetChannel | ( | adc_channel_t | adc_channel | ) |
void ADCBufferFlush | ( | void | ) |
void ADCStartConversion | ( | void | ) |
void ADCStartLowNoiseConversion | ( | void | ) |
Definition at line 323 of file adc.c.
References _BV, adc_sleep_mode, ADCSetMode(), AVR_SLEEP_CTRL_REG, sbi, and SINGLE_CONVERSION.
void ADCStopConversion | ( | void | ) |
Definition at line 343 of file adc.c.
References cbi, current_mode, FREE_RUNNING, and sbi.
Referenced by ADCSetMode(), ADCSetPrescale(), and ADCSetRef().
adc_mode_t ADCGetMode | ( | void | ) | [inline] |
void ADCBufInit | ( | u_short * | buf | ) |
Definition at line 169 of file adc.c.
References _adc_buf_head, and _adc_buf_tail.
Referenced by ADCBufferFlush(), and ADCInit().
u_char adc_sleep_mode = SLEEP_MODE_ADC |
adc_mode_t current_mode = ADC_OFF |
Definition at line 127 of file adc.c.
Referenced by ADCGetMode(), ADCSetMode(), and ADCStopConversion().
u_short* ADC_buffer = NULL |