mirror of https://github.com/ARMmbed/mbed-os.git
Merge pull request #8103 from jeromecoutant/PR_L0_ADC
STM32 L0 ADC internal channel fixpull/8337/head
commit
0b1bc876ac
|
@ -70,9 +70,8 @@ MBED_WEAK const PinMap PinMap_ADC[] = {
|
|||
};
|
||||
|
||||
MBED_WEAK const PinMap PinMap_ADC_Internal[] = {
|
||||
{ADC_TEMP, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)},
|
||||
{ADC_VREF, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)},
|
||||
{ADC_VBAT, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)},
|
||||
{ADC_VREF, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)}, // ADC_IN17 // VREFINT
|
||||
{ADC_TEMP, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC_IN18 // VSENSE
|
||||
{NC, NC, 0}
|
||||
};
|
||||
|
||||
|
|
|
@ -48,9 +48,8 @@ const PinMap PinMap_ADC[] = {
|
|||
};
|
||||
|
||||
const PinMap PinMap_ADC_Internal[] = {
|
||||
{ADC_TEMP, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)}, // Internal channel
|
||||
{ADC_VREF, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // Internal channel
|
||||
{ADC_VBAT, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // Internal channel
|
||||
{ADC_VREF, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)}, // ADC_IN17 // VREFINT
|
||||
{ADC_TEMP, ADC_1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC_IN18 // VSENSE
|
||||
{NC, NC, 0}
|
||||
};
|
||||
|
||||
|
|
|
@ -172,6 +172,12 @@ uint16_t adc_read(analogin_t *obj)
|
|||
|
||||
HAL_ADC_ConfigChannel(&obj->handle, &sConfig);
|
||||
|
||||
/* need to wait for some stabilization time after setting the TSEN bit in the ADC_CCR
|
||||
register to wake up the temperature sensor from power down mode */
|
||||
if (sConfig.Channel == ADC_CHANNEL_TEMPSENSOR) {
|
||||
wait_ms(20);
|
||||
}
|
||||
|
||||
HAL_ADC_Start(&obj->handle); // Start conversion
|
||||
|
||||
// Wait end of conversion and get value
|
||||
|
|
Loading…
Reference in New Issue