File tree Expand file tree Collapse file tree 1 file changed +12
-8
lines changed
libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F334R8 Expand file tree Collapse file tree 1 file changed +12
-8
lines changed Original file line number Diff line number Diff line change 37
37
38
38
ADC_HandleTypeDef AdcHandle ;
39
39
40
- int adc_inited = 0 ;
40
+ int adc1_inited = 0 ;
41
+ int adc2_inited = 0 ;
41
42
42
43
void analogin_init (analogin_t * obj , PinName pin )
43
44
{
@@ -51,13 +52,16 @@ void analogin_init(analogin_t *obj, PinName pin)
51
52
// Save pin number for the read function
52
53
obj -> pin = pin ;
53
54
54
- // The ADC initialization is done once
55
- if (adc_inited == 0 ) {
56
- adc_inited = 1 ;
57
-
58
- // Enable ADC clock
59
- if (obj -> adc == ADC_1 ) __ADC1_CLK_ENABLE ();
60
- if (obj -> adc == ADC_2 ) __ADC2_CLK_ENABLE ();
55
+ // The ADC initialization is done only once for each ADC
56
+ if ((adc1_inited == 0 ) || (adc2_inited == 0 )) {
57
+ if (obj -> adc == ADC_1 ) {
58
+ __ADC12_CLK_ENABLE ();
59
+ adc1_inited = 1 ;
60
+ }
61
+ if (obj -> adc == ADC_2 ) {
62
+ __ADC12_CLK_ENABLE ();
63
+ adc2_inited = 1 ;
64
+ }
61
65
62
66
// Configure ADC
63
67
AdcHandle .Instance = (ADC_TypeDef * )(obj -> adc );
You can’t perform that action at this time.
0 commit comments