Merge pull request #8168 from jeromecoutant/PR_ADC_DISCOL496

DISCO_L496AG : enable ADC
pull/7948/head
Cruz Monrreal 2018-10-08 10:10:44 -05:00 committed by GitHub
commit 5a1c49fa6d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 1 deletions

View File

@ -86,12 +86,23 @@ void analogin_init(analogin_t *obj, PinName pin)
obj->handle.Init.DFSDMConfig = 0;
#endif
#if defined(TARGET_DISCO_L496AG)
/* VREF+ is not connected to VDDA by default */
/* Use 2.5V as reference (instead of 3.3V) for internal channels calculation */
__HAL_RCC_SYSCFG_CLK_ENABLE();
HAL_SYSCFG_VREFBUF_VoltageScalingConfig(SYSCFG_VREFBUF_VOLTAGE_SCALE1); /* VREF_OUT2 = 2.5 V */
HAL_SYSCFG_VREFBUF_HighImpedanceConfig(SYSCFG_VREFBUF_HIGH_IMPEDANCE_DISABLE);
if (HAL_SYSCFG_EnableVREFBUF() != HAL_OK) {
error("HAL_SYSCFG_EnableVREFBUF issue\n");
}
#endif /* TARGET_DISCO_L496AG */
// Enable ADC clock
__HAL_RCC_ADC_CLK_ENABLE();
__HAL_RCC_ADC_CONFIG(RCC_ADCCLKSOURCE_SYSCLK);
if (HAL_ADC_Init(&obj->handle) != HAL_OK) {
error("Cannot initialize ADC");
error("Cannot initialize ADC\n");
}
// ADC calibration is done only once