Line data Source code
1 0 : /*
2 : * Copyright (c) 2024 Linumiz
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 :
7 : #ifndef ZEPHYR_INCLUDE_DRIVERS_ADC_ADS131M02_H_
8 : #define ZEPHYR_INCLUDE_DRIVERS_ADC_ADS131M02_H_
9 :
10 : #include <zephyr/device.h>
11 :
12 0 : enum ads131m02_adc_mode {
13 : ADS131M02_CONTINUOUS_MODE, /* Continuous conversion mode */
14 : ADS131M02_GLOBAL_CHOP_MODE /* Global chop mode */
15 : };
16 :
17 0 : enum ads131m02_adc_power_mode {
18 : ADS131M02_VLP, /* Very Low Power */
19 : ADS131M02_LP, /* Low Power */
20 : ADS131M02_HR /* High Resolution */
21 : };
22 :
23 0 : enum ads131m02_gc_delay {
24 : ADS131M02_GC_DELAY_2,
25 : ADS131M02_GC_DELAY_4,
26 : ADS131M02_GC_DELAY_8,
27 : ADS131M02_GC_DELAY_16,
28 : ADS131M02_GC_DELAY_32,
29 : ADS131M02_GC_DELAY_64,
30 : ADS131M02_GC_DELAY_128,
31 : ADS131M02_GC_DELAY_256,
32 : ADS131M02_GC_DELAY_512,
33 : ADS131M02_GC_DELAY_1024,
34 : ADS131M02_GC_DELAY_2048,
35 : ADS131M02_GC_DELAY_4096,
36 : ADS131M02_GC_DELAY_8192,
37 : ADS131M02_GC_DELAY_16384,
38 : ADS131M02_GC_DELAY_32768,
39 : ADS131M02_GC_DELAY_65536
40 : };
41 :
42 0 : int ads131m02_set_adc_mode(const struct device *dev, enum ads131m02_adc_mode mode,
43 : enum ads131m02_gc_delay gc_delay);
44 :
45 0 : int ads131m02_set_power_mode(const struct device *dev,
46 : enum ads131m02_adc_power_mode mode);
47 :
48 : #endif
|