periph_cpu.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2019 Inria
3  * SPDX-License-Identifier: LGPL-2.1-only
4  */
5 
6 #pragma once
7 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
26 #if defined(ADC3)
27 #define ADC_DEVS (3U)
28 #elif defined(ADC2)
29 #define ADC_DEVS (2U)
30 #elif defined(ADC1)
31 #define ADC_DEVS (1U)
32 #else
33 #error "Can't determine the number of ADC devices"
34 #endif
35 
36 #if defined(CPU_MODEL_STM32WB55RG)
40 #define ADC_T_ADCVREG_STUP_US (20)
41 #endif
42 
43 #ifndef DOXYGEN
44 
49 #define STM32_BOOTLOADER_ADDR (0x1FFF0000)
50 
55 #define HAVE_ADC_RES_T
56 typedef enum {
57  ADC_RES_6BIT = (ADC_CFGR_RES),
58  ADC_RES_8BIT = (ADC_CFGR_RES_1),
59  ADC_RES_10BIT = (ADC_CFGR_RES_0),
60  ADC_RES_12BIT = (0x00),
61  ADC_RES_14BIT = (0xfe),
62  ADC_RES_16BIT = (0xff)
63 } adc_res_t;
70 #define VBAT_ADC_RES ADC_RES_12BIT
71 #define VBAT_ADC_MAX 4095
74 #endif /* ndef DOXYGEN */
75 
76 #ifdef __cplusplus
77 }
78 #endif
79 
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