102 __IO int16_t temperatureDegreeC = 0;
103 uint32_t measuredLevel = 0;
110 if (((int32_t)*TEMPSENSOR_CAL2_ADDR - (int32_t)*TEMPSENSOR_CAL1_ADDR) != 0)
114 temperatureDegreeC = __LL_ADC_CALC_TEMPERATURE(batteryLevelmV,
116 LL_ADC_RESOLUTION_12B);
124 TEMPSENSOR_CAL1_TEMP,
127 LL_ADC_RESOLUTION_12B);
131 temperatureDegreeC <<= 8;
133 return (int16_t) temperatureDegreeC;
144 uint16_t batteryLevelmV = 0;
145 uint32_t measuredLevel = 0;
149 if (measuredLevel == 0)
155 if ((uint32_t)*VREFINT_CAL_ADDR != (uint32_t)0xFFFFU)
159 batteryLevelmV = __LL_ADC_CALC_VREFANALOG_VOLTAGE(measuredLevel,
166 batteryLevelmV = (VREFINT_CAL_VREF * 1510) / measuredLevel;
170 return batteryLevelmV;
186 uint32_t ADCxConvertedValues = 0;
187 ADC_ChannelConfTypeDef sConfig = {0};
192 if (HAL_ADCEx_Calibration_Start(&
hadc) != HAL_OK)
198 sConfig.Channel = channel;
199 sConfig.Rank = ADC_REGULAR_RANK_1;
200 sConfig.SamplingTime = ADC_SAMPLINGTIME_COMMON_1;
201 if (HAL_ADC_ConfigChannel(&
hadc, &sConfig) != HAL_OK)
206 if (HAL_ADC_Start(&
hadc) != HAL_OK)
212 HAL_ADC_PollForConversion(&
hadc, HAL_MAX_DELAY);
217 ADCxConvertedValues = HAL_ADC_GetValue(&
hadc);
219 HAL_ADC_DeInit(&
hadc);
221 return ADCxConvertedValues;
void Error_Handler(void)
Default error handler called by HAL on unrecoverable errors. Disables interrupts and enters an infini...