Loading...
Searching...
No Matches
adc.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2014-2015 Freie Universität Berlin
3 *
4 * This file is subject to the terms and conditions of the GNU Lesser
5 * General Public License v2.1. See the file LICENSE in the top level
6 * directory for more details.
7 */
8
9#pragma once
10
56
57#include <limits.h>
58#include <stdint.h>
59
60#include "periph_cpu.h"
61#include "periph_conf.h"
62
63#ifdef __cplusplus
64extern "C" {
65#endif
66
70#ifndef HAVE_ADC_T
71typedef uint_fast8_t adc_t;
72#endif
73
77#ifndef ADC_UNDEF
78#define ADC_UNDEF (UINT_FAST8_MAX)
79#endif
80
84#ifndef ADC_LINE
85#define ADC_LINE(x) (x)
86#endif
87
91#ifndef HAVE_ADC_RES_T
100#endif
101
112int adc_init(adc_t line);
113
128int32_t adc_sample(adc_t line, adc_res_t res);
129
138
147
154
155#ifdef __cplusplus
156}
157#endif
158
int32_t adc_sample(adc_t line, adc_res_t res)
Sample a value from the given ADC line.
int adc_init(adc_t line)
Initialize the given ADC line.
int32_t adc_continuous_sample(adc_t line)
Sample an ADC line without powering off the ADC afterward.
void adc_continuous_stop(void)
Disable the ADC to save power.
uint_fast8_t adc_t
Define default ADC type identifier.
Definition adc.h:71
void adc_continuous_begin(adc_res_t res)
Configure the ADC with a given resolution for continuous sampling.
adc_res_t
Possible ADC resolution settings.
Definition adc.h:92
@ ADC_RES_16BIT
ADC resolution: 16 bit.
Definition adc.h:98
@ ADC_RES_8BIT
ADC resolution: 8 bit.
Definition adc.h:94
@ ADC_RES_14BIT
ADC resolution: 14 bit.
Definition adc.h:97
@ ADC_RES_6BIT
ADC resolution: 6 bit.
Definition adc.h:93
@ ADC_RES_10BIT
ADC resolution: 10 bit.
Definition adc.h:95
@ ADC_RES_12BIT
ADC resolution: 12 bit.
Definition adc.h:96