stm32f4: adc: Add VBat sensor enable/disable

Original discussion at: https://github.com/libopencm3/libopencm3/pull/770
This commit is contained in:
Jordi Pakey-Rodriguez 2017-04-09 23:02:08 -05:00 committed by Karl Palsson
parent 0787675332
commit 21b23f1ff1
2 changed files with 20 additions and 2 deletions

View File

@ -579,9 +579,10 @@ void adc_eoc_after_each(uint32_t adc);
void adc_eoc_after_group(uint32_t adc); void adc_eoc_after_group(uint32_t adc);
void adc_set_dma_continue(uint32_t adc); void adc_set_dma_continue(uint32_t adc);
void adc_set_dma_terminate(uint32_t adc); void adc_set_dma_terminate(uint32_t adc);
void adc_enable_temperature_sensor(void); void adc_enable_temperature_sensor(void);
void adc_disable_temperature_sensor(void); void adc_disable_temperature_sensor(void);
void adc_enable_vbat_sensor(void);
void adc_disable_vbat_sensor(void);
END_DECLS END_DECLS

View File

@ -426,6 +426,23 @@ void adc_disable_temperature_sensor(void)
ADC_CCR &= ~ADC_CCR_TSVREFE; ADC_CCR &= ~ADC_CCR_TSVREFE;
} }
/*---------------------------------------------------------------------------*/ /** Enable The VBat Sensor.
* This enables the battery voltage measurements on ADC1 channel 18. On
* STM32F42x and STM32F43x, this must be disabled when the temperature sensor
* is enabled. If both are enabled, only the VBat conversion is performed.
*/
void adc_enable_vbat_sensor(void)
{
ADC_CCR |= ADC_CCR_VBATE;
}
/** Disable The VBat Sensor.
* Disabling this will reduce power consumption from the battery voltage
* measurement.
*/
void adc_disable_vbat_sensor(void)
{
ADC_CCR &= ~ADC_CCR_VBATE;
}
/**@}*/ /**@}*/