Lines Matching refs:hadc

379 HAL_StatusTypeDef HAL_ADC_Init(ADC_HandleTypeDef *hadc)  in HAL_ADC_Init()  argument
388 if (hadc == NULL) in HAL_ADC_Init()
394 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Init()
395 assert_param(IS_ADC_CLOCKPRESCALER(hadc->Init.ClockPrescaler)); in HAL_ADC_Init()
396 assert_param(IS_ADC_RESOLUTION(hadc->Init.Resolution)); in HAL_ADC_Init()
397 assert_param(IS_ADC_DATA_ALIGN(hadc->Init.DataAlign)); in HAL_ADC_Init()
398 assert_param(IS_ADC_SCAN_MODE(hadc->Init.ScanConvMode)); in HAL_ADC_Init()
399 assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); in HAL_ADC_Init()
400 assert_param(IS_ADC_EXTTRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); in HAL_ADC_Init()
401 assert_param(IS_ADC_EXTTRIG(hadc->Init.ExternalTrigConv)); in HAL_ADC_Init()
402 assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests)); in HAL_ADC_Init()
403 assert_param(IS_ADC_EOC_SELECTION(hadc->Init.EOCSelection)); in HAL_ADC_Init()
404 assert_param(IS_ADC_OVERRUN(hadc->Init.Overrun)); in HAL_ADC_Init()
405 assert_param(IS_FUNCTIONAL_STATE(hadc->Init.LowPowerAutoWait)); in HAL_ADC_Init()
406 assert_param(IS_FUNCTIONAL_STATE(hadc->Init.LowPowerAutoPowerOff)); in HAL_ADC_Init()
407 assert_param(IS_ADC_SAMPLE_TIME(hadc->Init.SamplingTimeCommon1)); in HAL_ADC_Init()
408 assert_param(IS_ADC_SAMPLE_TIME(hadc->Init.SamplingTimeCommon2)); in HAL_ADC_Init()
409 assert_param(IS_FUNCTIONAL_STATE(hadc->Init.OversamplingMode)); in HAL_ADC_Init()
410 if (hadc->Init.OversamplingMode == ENABLE) in HAL_ADC_Init()
412 assert_param(IS_ADC_OVERSAMPLING_RATIO(hadc->Init.Oversampling.Ratio)); in HAL_ADC_Init()
413 assert_param(IS_ADC_RIGHT_BIT_SHIFT(hadc->Init.Oversampling.RightBitShift)); in HAL_ADC_Init()
414 assert_param(IS_ADC_TRIGGERED_OVERSAMPLING_MODE(hadc->Init.Oversampling.TriggeredMode)); in HAL_ADC_Init()
416 assert_param(IS_ADC_TRIGGER_FREQ(hadc->Init.TriggerFrequencyMode)); in HAL_ADC_Init()
418 if (hadc->Init.ScanConvMode != ADC_SCAN_DISABLE) in HAL_ADC_Init()
420 assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DiscontinuousConvMode)); in HAL_ADC_Init()
422 if (hadc->Init.ScanConvMode == ADC_SCAN_ENABLE) in HAL_ADC_Init()
424 assert_param(IS_ADC_REGULAR_NB_CONV(hadc->Init.NbrOfConversion)); in HAL_ADC_Init()
430 …assert_param(!((hadc->Init.DiscontinuousConvMode == ENABLE) && (hadc->Init.ContinuousConvMode == E… in HAL_ADC_Init()
434 if (hadc->State == HAL_ADC_STATE_RESET) in HAL_ADC_Init()
438hadc->ConvCpltCallback = HAL_ADC_ConvCpltCallback; /* Legacy weak cal… in HAL_ADC_Init()
439hadc->ConvHalfCpltCallback = HAL_ADC_ConvHalfCpltCallback; /* Legacy weak cal… in HAL_ADC_Init()
440hadc->LevelOutOfWindowCallback = HAL_ADC_LevelOutOfWindowCallback; /* Legacy weak cal… in HAL_ADC_Init()
441hadc->ErrorCallback = HAL_ADC_ErrorCallback; /* Legacy weak cal… in HAL_ADC_Init()
442hadc->LevelOutOfWindow2Callback = HAL_ADCEx_LevelOutOfWindow2Callback; /* Legacy weak cal… in HAL_ADC_Init()
443hadc->LevelOutOfWindow3Callback = HAL_ADCEx_LevelOutOfWindow3Callback; /* Legacy weak cal… in HAL_ADC_Init()
444hadc->EndOfSamplingCallback = HAL_ADCEx_EndOfSamplingCallback; /* Legacy weak cal… in HAL_ADC_Init()
446 if (hadc->MspInitCallback == NULL) in HAL_ADC_Init()
448 hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit */ in HAL_ADC_Init()
452 hadc->MspInitCallback(hadc); in HAL_ADC_Init()
455 HAL_ADC_MspInit(hadc); in HAL_ADC_Init()
459 ADC_CLEAR_ERRORCODE(hadc); in HAL_ADC_Init()
462 hadc->Lock = HAL_UNLOCKED; in HAL_ADC_Init()
465 if (LL_ADC_IsInternalRegulatorEnabled(hadc->Instance) == 0UL) in HAL_ADC_Init()
468 LL_ADC_EnableInternalRegulator(hadc->Instance); in HAL_ADC_Init()
485 if (LL_ADC_IsInternalRegulatorEnabled(hadc->Instance) == 0UL) in HAL_ADC_Init()
488 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in HAL_ADC_Init()
491 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in HAL_ADC_Init()
500 tmp_adc_reg_is_conversion_on_going = LL_ADC_REG_IsConversionOngoing(hadc->Instance); in HAL_ADC_Init()
502 if (((hadc->State & HAL_ADC_STATE_ERROR_INTERNAL) == 0UL) in HAL_ADC_Init()
507 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Init()
534 if (LL_ADC_IsEnabled(hadc->Instance) == 0UL) in HAL_ADC_Init()
544 tmpCFGR1 |= (hadc->Init.Resolution | in HAL_ADC_Init()
545 ADC_CFGR1_AUTOWAIT((uint32_t)hadc->Init.LowPowerAutoWait) | in HAL_ADC_Init()
546 ADC_CFGR1_AUTOOFF((uint32_t)hadc->Init.LowPowerAutoPowerOff) | in HAL_ADC_Init()
547 ADC_CFGR1_CONTINUOUS((uint32_t)hadc->Init.ContinuousConvMode) | in HAL_ADC_Init()
548 ADC_CFGR1_OVERRUN(hadc->Init.Overrun) | in HAL_ADC_Init()
549 hadc->Init.DataAlign | in HAL_ADC_Init()
550 ADC_SCAN_SEQ_MODE(hadc->Init.ScanConvMode) | in HAL_ADC_Init()
551 ADC_CFGR1_DMACONTREQ((uint32_t)hadc->Init.DMAContinuousRequests)); in HAL_ADC_Init()
554 if (hadc->Init.DiscontinuousConvMode == ENABLE) in HAL_ADC_Init()
556 if (hadc->Init.ContinuousConvMode == DISABLE) in HAL_ADC_Init()
568 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); in HAL_ADC_Init()
571 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in HAL_ADC_Init()
580 if (hadc->Init.ExternalTrigConv != ADC_SOFTWARE_START) in HAL_ADC_Init()
582 tmpCFGR1 |= ((hadc->Init.ExternalTrigConv & ADC_CFGR1_EXTSEL) | in HAL_ADC_Init()
583 hadc->Init.ExternalTrigConvEdge); in HAL_ADC_Init()
587 MODIFY_REG(hadc->Instance->CFGR1, in HAL_ADC_Init()
601 tmpCFGR2 |= ((hadc->Init.ClockPrescaler & ADC_CFGR2_CKMODE) | in HAL_ADC_Init()
602 hadc->Init.TriggerFrequencyMode in HAL_ADC_Init()
605 if (hadc->Init.OversamplingMode == ENABLE) in HAL_ADC_Init()
608 (hadc->Init.ClockPrescaler & ADC_CFGR2_CKMODE) | in HAL_ADC_Init()
609 hadc->Init.Oversampling.Ratio | in HAL_ADC_Init()
610 hadc->Init.Oversampling.RightBitShift | in HAL_ADC_Init()
611 hadc->Init.Oversampling.TriggeredMode in HAL_ADC_Init()
615 MODIFY_REG(hadc->Instance->CFGR2, in HAL_ADC_Init()
626 if (((hadc->Init.ClockPrescaler) != ADC_CLOCK_SYNC_PCLK_DIV1) && in HAL_ADC_Init()
627 ((hadc->Init.ClockPrescaler) != ADC_CLOCK_SYNC_PCLK_DIV2) && in HAL_ADC_Init()
628 ((hadc->Init.ClockPrescaler) != ADC_CLOCK_SYNC_PCLK_DIV4)) in HAL_ADC_Init()
632 hadc->Init.ClockPrescaler & ADC_CCR_PRESC); in HAL_ADC_Init()
637 …LL_ADC_SetSamplingTimeCommonChannels(hadc->Instance, LL_ADC_SAMPLINGTIME_COMMON_1, hadc->Init.Samp… in HAL_ADC_Init()
638 …LL_ADC_SetSamplingTimeCommonChannels(hadc->Instance, LL_ADC_SAMPLINGTIME_COMMON_2, hadc->Init.Samp… in HAL_ADC_Init()
650 if (hadc->Init.ScanConvMode == ADC_SCAN_DISABLE) in HAL_ADC_Init()
654 SET_BIT(hadc->Instance->CHSELR, in HAL_ADC_Init()
657 else if (hadc->Init.ScanConvMode == ADC_SCAN_ENABLE) in HAL_ADC_Init()
668 MODIFY_REG(hadc->Instance->CHSELR, in HAL_ADC_Init()
670 … (ADC_CHSELR_SQ2_TO_SQ8 << (((hadc->Init.NbrOfConversion - 1UL) * ADC_REGULAR_RANK_2) & 0x1FUL)) in HAL_ADC_Init()
671 | (hadc->ADCGroupRegularSequencerRanks) in HAL_ADC_Init()
677 if(LL_ADC_GetSamplingTimeCommonChannels(hadc->Instance, LL_ADC_SAMPLINGTIME_COMMON_1) in HAL_ADC_Init()
678 == hadc->Init.SamplingTimeCommon1) in HAL_ADC_Init()
681 ADC_CLEAR_ERRORCODE(hadc); in HAL_ADC_Init()
684 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Init()
691 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Init()
696 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in HAL_ADC_Init()
705 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in HAL_ADC_Init()
728 HAL_StatusTypeDef HAL_ADC_DeInit(ADC_HandleTypeDef *hadc) in HAL_ADC_DeInit() argument
733 if (hadc == NULL) in HAL_ADC_DeInit()
739 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_DeInit()
742 SET_BIT(hadc->State, HAL_ADC_STATE_BUSY_INTERNAL); in HAL_ADC_DeInit()
745 tmp_hal_status = ADC_ConversionStop(hadc); in HAL_ADC_DeInit()
751 tmp_hal_status = ADC_Disable(hadc); in HAL_ADC_DeInit()
757 hadc->State = HAL_ADC_STATE_READY; in HAL_ADC_DeInit()
761 LL_ADC_DisableInternalRegulator(hadc->Instance); in HAL_ADC_DeInit()
772 __HAL_ADC_DISABLE_IT(hadc, (ADC_IT_AWD3 | ADC_IT_AWD2 | in HAL_ADC_DeInit()
778 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_AWD3 | ADC_FLAG_AWD2 | in HAL_ADC_DeInit()
788hadc->Instance->CFGR1 &= ~(ADC_CFGR1_AWD1CH | ADC_CFGR1_AWD1EN | ADC_CFGR1_AWD1SGL | ADC_CFGR1_… in HAL_ADC_DeInit()
796 hadc->Instance->CFGR2 &= ~ADC_CFGR2_CKMODE; in HAL_ADC_DeInit()
799 hadc->Instance->SMPR &= ~ADC_SMPR_SMP1; in HAL_ADC_DeInit()
802 hadc->Instance->AWD1TR &= ~(ADC_AWD1TR_HT1 | ADC_AWD1TR_LT1); in HAL_ADC_DeInit()
803 hadc->Instance->AWD2TR &= ~(ADC_AWD2TR_HT2 | ADC_AWD2TR_LT2); in HAL_ADC_DeInit()
804 hadc->Instance->AWD3TR &= ~(ADC_AWD3TR_HT3 | ADC_AWD3TR_LT3); in HAL_ADC_DeInit()
807 hadc->Instance->CHSELR &= ~(ADC_CHSELR_SQ_ALL); in HAL_ADC_DeInit()
823 if (hadc->MspDeInitCallback == NULL) in HAL_ADC_DeInit()
825 hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit */ in HAL_ADC_DeInit()
829 hadc->MspDeInitCallback(hadc); in HAL_ADC_DeInit()
832 HAL_ADC_MspDeInit(hadc); in HAL_ADC_DeInit()
836 hadc->ADCGroupRegularSequencerRanks = 0x00000000UL; in HAL_ADC_DeInit()
839 ADC_CLEAR_ERRORCODE(hadc); in HAL_ADC_DeInit()
842 hadc->State = HAL_ADC_STATE_RESET; in HAL_ADC_DeInit()
844 __HAL_UNLOCK(hadc); in HAL_ADC_DeInit()
854 __weak void HAL_ADC_MspInit(ADC_HandleTypeDef *hadc) in HAL_ADC_MspInit() argument
857 UNUSED(hadc); in HAL_ADC_MspInit()
871 __weak void HAL_ADC_MspDeInit(ADC_HandleTypeDef *hadc) in HAL_ADC_MspDeInit() argument
874 UNUSED(hadc); in HAL_ADC_MspDeInit()
903 HAL_StatusTypeDef HAL_ADC_RegisterCallback(ADC_HandleTypeDef *hadc, HAL_ADC_CallbackIDTypeDef Callb… in HAL_ADC_RegisterCallback() argument
911 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_RegisterCallback()
916 if ((hadc->State & HAL_ADC_STATE_READY) != 0UL) in HAL_ADC_RegisterCallback()
921 hadc->ConvCpltCallback = pCallback; in HAL_ADC_RegisterCallback()
925 hadc->ConvHalfCpltCallback = pCallback; in HAL_ADC_RegisterCallback()
929 hadc->LevelOutOfWindowCallback = pCallback; in HAL_ADC_RegisterCallback()
933 hadc->ErrorCallback = pCallback; in HAL_ADC_RegisterCallback()
937 hadc->LevelOutOfWindow2Callback = pCallback; in HAL_ADC_RegisterCallback()
941 hadc->LevelOutOfWindow3Callback = pCallback; in HAL_ADC_RegisterCallback()
945 hadc->EndOfSamplingCallback = pCallback; in HAL_ADC_RegisterCallback()
949 hadc->MspInitCallback = pCallback; in HAL_ADC_RegisterCallback()
953 hadc->MspDeInitCallback = pCallback; in HAL_ADC_RegisterCallback()
958 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_RegisterCallback()
965 else if (HAL_ADC_STATE_RESET == hadc->State) in HAL_ADC_RegisterCallback()
970 hadc->MspInitCallback = pCallback; in HAL_ADC_RegisterCallback()
974 hadc->MspDeInitCallback = pCallback; in HAL_ADC_RegisterCallback()
979 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_RegisterCallback()
989 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_RegisterCallback()
1018 HAL_StatusTypeDef HAL_ADC_UnRegisterCallback(ADC_HandleTypeDef *hadc, HAL_ADC_CallbackIDTypeDef Cal… in HAL_ADC_UnRegisterCallback() argument
1022 if ((hadc->State & HAL_ADC_STATE_READY) != 0) in HAL_ADC_UnRegisterCallback()
1027 hadc->ConvCpltCallback = HAL_ADC_ConvCpltCallback; in HAL_ADC_UnRegisterCallback()
1031 hadc->ConvHalfCpltCallback = HAL_ADC_ConvHalfCpltCallback; in HAL_ADC_UnRegisterCallback()
1035 hadc->LevelOutOfWindowCallback = HAL_ADC_LevelOutOfWindowCallback; in HAL_ADC_UnRegisterCallback()
1039 hadc->ErrorCallback = HAL_ADC_ErrorCallback; in HAL_ADC_UnRegisterCallback()
1043 hadc->LevelOutOfWindow2Callback = HAL_ADCEx_LevelOutOfWindow2Callback; in HAL_ADC_UnRegisterCallback()
1047 hadc->LevelOutOfWindow3Callback = HAL_ADCEx_LevelOutOfWindow3Callback; in HAL_ADC_UnRegisterCallback()
1051 hadc->EndOfSamplingCallback = HAL_ADCEx_EndOfSamplingCallback; in HAL_ADC_UnRegisterCallback()
1055 hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit */ in HAL_ADC_UnRegisterCallback()
1059 hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit */ in HAL_ADC_UnRegisterCallback()
1064 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_UnRegisterCallback()
1071 else if (HAL_ADC_STATE_RESET == hadc->State) in HAL_ADC_UnRegisterCallback()
1076hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit */ in HAL_ADC_UnRegisterCallback()
1080hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit */ in HAL_ADC_UnRegisterCallback()
1085 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_UnRegisterCallback()
1095 hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; in HAL_ADC_UnRegisterCallback()
1138 HAL_StatusTypeDef HAL_ADC_Start(ADC_HandleTypeDef *hadc) in HAL_ADC_Start() argument
1143 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Start()
1146 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_Start()
1148 __HAL_LOCK(hadc); in HAL_ADC_Start()
1151 tmp_hal_status = ADC_Enable(hadc); in HAL_ADC_Start()
1159 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Start()
1165 ADC_CLEAR_ERRORCODE(hadc); in HAL_ADC_Start()
1169 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_EOC | ADC_FLAG_EOS | ADC_FLAG_OVR)); in HAL_ADC_Start()
1174 __HAL_UNLOCK(hadc); in HAL_ADC_Start()
1181 LL_ADC_REG_StartConversion(hadc->Instance); in HAL_ADC_Start()
1185 __HAL_UNLOCK(hadc); in HAL_ADC_Start()
1205 HAL_StatusTypeDef HAL_ADC_Stop(ADC_HandleTypeDef *hadc) in HAL_ADC_Stop() argument
1210 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Stop()
1212 __HAL_LOCK(hadc); in HAL_ADC_Stop()
1215 tmp_hal_status = ADC_ConversionStop(hadc); in HAL_ADC_Stop()
1221 tmp_hal_status = ADC_Disable(hadc); in HAL_ADC_Stop()
1227 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Stop()
1233 __HAL_UNLOCK(hadc); in HAL_ADC_Stop()
1256 HAL_StatusTypeDef HAL_ADC_PollForConversion(ADC_HandleTypeDef *hadc, uint32_t Timeout) in HAL_ADC_PollForConversion() argument
1262 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_PollForConversion()
1265 if (hadc->Init.EOCSelection == ADC_EOC_SEQ_CONV) in HAL_ADC_PollForConversion()
1278 if ((hadc->Instance->CFGR1 & ADC_CFGR1_DMAEN) != 0UL) in HAL_ADC_PollForConversion()
1281 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); in HAL_ADC_PollForConversion()
1295 while ((hadc->Instance->ISR & tmp_flag_end) == 0UL) in HAL_ADC_PollForConversion()
1303 if ((hadc->Instance->ISR & tmp_flag_end) == 0UL) in HAL_ADC_PollForConversion()
1306 SET_BIT(hadc->State, HAL_ADC_STATE_TIMEOUT); in HAL_ADC_PollForConversion()
1308 __HAL_UNLOCK(hadc); in HAL_ADC_PollForConversion()
1317 SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); in HAL_ADC_PollForConversion()
1321 if ((LL_ADC_REG_IsTriggerSourceSWStart(hadc->Instance) != 0UL) in HAL_ADC_PollForConversion()
1322 && (hadc->Init.ContinuousConvMode == DISABLE) in HAL_ADC_PollForConversion()
1326 if (__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOS)) in HAL_ADC_PollForConversion()
1330 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_PollForConversion()
1336 __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC | ADC_IT_EOS); in HAL_ADC_PollForConversion()
1339 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_PollForConversion()
1346 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); in HAL_ADC_PollForConversion()
1349 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in HAL_ADC_PollForConversion()
1357 if (hadc->Init.LowPowerAutoWait == DISABLE) in HAL_ADC_PollForConversion()
1360 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_EOC | ADC_FLAG_EOS)); in HAL_ADC_PollForConversion()
1389 HAL_StatusTypeDef HAL_ADC_PollForEvent(ADC_HandleTypeDef *hadc, uint32_t EventType, uint32_t Timeou… in HAL_ADC_PollForEvent() argument
1394 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_PollForEvent()
1401 while (__HAL_ADC_GET_FLAG(hadc, EventType) == 0UL) in HAL_ADC_PollForEvent()
1409 if (__HAL_ADC_GET_FLAG(hadc, EventType) == 0UL) in HAL_ADC_PollForEvent()
1412 SET_BIT(hadc->State, HAL_ADC_STATE_TIMEOUT); in HAL_ADC_PollForEvent()
1414 __HAL_UNLOCK(hadc); in HAL_ADC_PollForEvent()
1427 SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOSMP); in HAL_ADC_PollForEvent()
1430 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOSMP); in HAL_ADC_PollForEvent()
1446 SET_BIT(hadc->State, HAL_ADC_STATE_AWD1); in HAL_ADC_PollForEvent()
1449 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD1); in HAL_ADC_PollForEvent()
1456 SET_BIT(hadc->State, HAL_ADC_STATE_AWD2); in HAL_ADC_PollForEvent()
1459 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD2); in HAL_ADC_PollForEvent()
1466 SET_BIT(hadc->State, HAL_ADC_STATE_AWD3); in HAL_ADC_PollForEvent()
1469 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD3); in HAL_ADC_PollForEvent()
1479 if (hadc->Init.Overrun == ADC_OVR_DATA_PRESERVED) in HAL_ADC_PollForEvent()
1482 SET_BIT(hadc->State, HAL_ADC_STATE_REG_OVR); in HAL_ADC_PollForEvent()
1485 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_OVR); in HAL_ADC_PollForEvent()
1492 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR); in HAL_ADC_PollForEvent()
1519 HAL_StatusTypeDef HAL_ADC_Start_IT(ADC_HandleTypeDef *hadc) in HAL_ADC_Start_IT() argument
1524 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Start_IT()
1527 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_Start_IT()
1529 __HAL_LOCK(hadc); in HAL_ADC_Start_IT()
1532 tmp_hal_status = ADC_Enable(hadc); in HAL_ADC_Start_IT()
1540 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Start_IT()
1547 ADC_CLEAR_ERRORCODE(hadc); in HAL_ADC_Start_IT()
1551 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_EOC | ADC_FLAG_EOS | ADC_FLAG_OVR)); in HAL_ADC_Start_IT()
1556 __HAL_UNLOCK(hadc); in HAL_ADC_Start_IT()
1559 __HAL_ADC_DISABLE_IT(hadc, (ADC_IT_EOC | ADC_IT_EOS | ADC_IT_OVR)); in HAL_ADC_Start_IT()
1562 switch (hadc->Init.EOCSelection) in HAL_ADC_Start_IT()
1565 __HAL_ADC_ENABLE_IT(hadc, ADC_IT_EOS); in HAL_ADC_Start_IT()
1569 __HAL_ADC_ENABLE_IT(hadc, ADC_IT_EOC); in HAL_ADC_Start_IT()
1577 if (hadc->Init.Overrun == ADC_OVR_DATA_PRESERVED) in HAL_ADC_Start_IT()
1579 __HAL_ADC_ENABLE_IT(hadc, ADC_IT_OVR); in HAL_ADC_Start_IT()
1587 LL_ADC_REG_StartConversion(hadc->Instance); in HAL_ADC_Start_IT()
1591 __HAL_UNLOCK(hadc); in HAL_ADC_Start_IT()
1610 HAL_StatusTypeDef HAL_ADC_Stop_IT(ADC_HandleTypeDef *hadc) in HAL_ADC_Stop_IT() argument
1615 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Stop_IT()
1617 __HAL_LOCK(hadc); in HAL_ADC_Stop_IT()
1620 tmp_hal_status = ADC_ConversionStop(hadc); in HAL_ADC_Stop_IT()
1627 __HAL_ADC_DISABLE_IT(hadc, (ADC_IT_EOC | ADC_IT_EOS | ADC_IT_OVR)); in HAL_ADC_Stop_IT()
1630 tmp_hal_status = ADC_Disable(hadc); in HAL_ADC_Stop_IT()
1636 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Stop_IT()
1642 __HAL_UNLOCK(hadc); in HAL_ADC_Stop_IT()
1657 HAL_StatusTypeDef HAL_ADC_Start_DMA(ADC_HandleTypeDef *hadc, uint32_t *pData, uint32_t Length) in HAL_ADC_Start_DMA() argument
1662 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Start_DMA()
1665 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_Start_DMA()
1667 __HAL_LOCK(hadc); in HAL_ADC_Start_DMA()
1672 if ((hadc->Instance->CFGR1 & ADC_CFGR1_DMAEN) == 0UL) in HAL_ADC_Start_DMA()
1674 if (LL_ADC_IsEnabled(hadc->Instance) != 0UL) in HAL_ADC_Start_DMA()
1677 LL_ADC_Disable(hadc->Instance); in HAL_ADC_Start_DMA()
1681 hadc->Instance->CFGR1 |= ADC_CFGR1_DMAEN; in HAL_ADC_Start_DMA()
1685 tmp_hal_status = ADC_Enable(hadc); in HAL_ADC_Start_DMA()
1693 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Start_DMA()
1699 ADC_CLEAR_ERRORCODE(hadc); in HAL_ADC_Start_DMA()
1702 hadc->DMA_Handle->XferCpltCallback = ADC_DMAConvCplt; in HAL_ADC_Start_DMA()
1705 hadc->DMA_Handle->XferHalfCpltCallback = ADC_DMAHalfConvCplt; in HAL_ADC_Start_DMA()
1708 hadc->DMA_Handle->XferErrorCallback = ADC_DMAError; in HAL_ADC_Start_DMA()
1717 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_EOC | ADC_FLAG_EOS | ADC_FLAG_OVR)); in HAL_ADC_Start_DMA()
1722 __HAL_UNLOCK(hadc); in HAL_ADC_Start_DMA()
1725 __HAL_ADC_ENABLE_IT(hadc, ADC_IT_OVR); in HAL_ADC_Start_DMA()
1728 …tmp_hal_status = HAL_DMA_Start_IT(hadc->DMA_Handle, (uint32_t)&hadc->Instance->DR, (uint32_t)pData… in HAL_ADC_Start_DMA()
1735 LL_ADC_REG_StartConversion(hadc->Instance); in HAL_ADC_Start_DMA()
1753 HAL_StatusTypeDef HAL_ADC_Stop_DMA(ADC_HandleTypeDef *hadc) in HAL_ADC_Stop_DMA() argument
1758 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_Stop_DMA()
1760 __HAL_LOCK(hadc); in HAL_ADC_Stop_DMA()
1763 tmp_hal_status = ADC_ConversionStop(hadc); in HAL_ADC_Stop_DMA()
1770 if (hadc->DMA_Handle->State == HAL_DMA_STATE_BUSY) in HAL_ADC_Stop_DMA()
1772 tmp_hal_status = HAL_DMA_Abort(hadc->DMA_Handle); in HAL_ADC_Stop_DMA()
1778 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_DMA); in HAL_ADC_Stop_DMA()
1783 __HAL_ADC_DISABLE_IT(hadc, ADC_IT_OVR); in HAL_ADC_Stop_DMA()
1790 tmp_hal_status = ADC_Disable(hadc); in HAL_ADC_Stop_DMA()
1794 (void)ADC_Disable(hadc); in HAL_ADC_Stop_DMA()
1801 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_Stop_DMA()
1807 CLEAR_BIT(hadc->Instance->CFGR1, ADC_CFGR1_DMAEN); in HAL_ADC_Stop_DMA()
1810 __HAL_UNLOCK(hadc); in HAL_ADC_Stop_DMA()
1834 uint32_t HAL_ADC_GetValue(ADC_HandleTypeDef *hadc) in HAL_ADC_GetValue() argument
1837 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_GetValue()
1843 return hadc->Instance->DR; in HAL_ADC_GetValue()
1851 void HAL_ADC_IRQHandler(ADC_HandleTypeDef *hadc) in HAL_ADC_IRQHandler() argument
1854 uint32_t tmp_isr = hadc->Instance->ISR; in HAL_ADC_IRQHandler()
1855 uint32_t tmp_ier = hadc->Instance->IER; in HAL_ADC_IRQHandler()
1858 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_IRQHandler()
1859 assert_param(IS_ADC_EOC_SELECTION(hadc->Init.EOCSelection)); in HAL_ADC_IRQHandler()
1865 if ((hadc->State & HAL_ADC_STATE_ERROR_INTERNAL) == 0UL) in HAL_ADC_IRQHandler()
1868 SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOSMP); in HAL_ADC_IRQHandler()
1873 hadc->EndOfSamplingCallback(hadc); in HAL_ADC_IRQHandler()
1875 HAL_ADCEx_EndOfSamplingCallback(hadc); in HAL_ADC_IRQHandler()
1879 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOSMP); in HAL_ADC_IRQHandler()
1887 if ((hadc->State & HAL_ADC_STATE_ERROR_INTERNAL) == 0UL) in HAL_ADC_IRQHandler()
1890 SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); in HAL_ADC_IRQHandler()
1896 if ((LL_ADC_REG_IsTriggerSourceSWStart(hadc->Instance) != 0UL) in HAL_ADC_IRQHandler()
1897 && (hadc->Init.ContinuousConvMode == DISABLE) in HAL_ADC_IRQHandler()
1901 if (__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOS)) in HAL_ADC_IRQHandler()
1905 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_IRQHandler()
1911 __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC | ADC_IT_EOS); in HAL_ADC_IRQHandler()
1914 ADC_STATE_CLR_SET(hadc->State, in HAL_ADC_IRQHandler()
1921 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); in HAL_ADC_IRQHandler()
1924 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in HAL_ADC_IRQHandler()
1935 hadc->ConvCpltCallback(hadc); in HAL_ADC_IRQHandler()
1937 HAL_ADC_ConvCpltCallback(hadc); in HAL_ADC_IRQHandler()
1945 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_EOC | ADC_FLAG_EOS)); in HAL_ADC_IRQHandler()
1952 SET_BIT(hadc->State, HAL_ADC_STATE_AWD1); in HAL_ADC_IRQHandler()
1956 hadc->LevelOutOfWindowCallback(hadc); in HAL_ADC_IRQHandler()
1958 HAL_ADC_LevelOutOfWindowCallback(hadc); in HAL_ADC_IRQHandler()
1962 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD1); in HAL_ADC_IRQHandler()
1969 SET_BIT(hadc->State, HAL_ADC_STATE_AWD2); in HAL_ADC_IRQHandler()
1973 hadc->LevelOutOfWindow2Callback(hadc); in HAL_ADC_IRQHandler()
1975 HAL_ADCEx_LevelOutOfWindow2Callback(hadc); in HAL_ADC_IRQHandler()
1979 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD2); in HAL_ADC_IRQHandler()
1986 SET_BIT(hadc->State, HAL_ADC_STATE_AWD3); in HAL_ADC_IRQHandler()
1990 hadc->LevelOutOfWindow3Callback(hadc); in HAL_ADC_IRQHandler()
1992 HAL_ADCEx_LevelOutOfWindow3Callback(hadc); in HAL_ADC_IRQHandler()
1996 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD3); in HAL_ADC_IRQHandler()
2008 if (hadc->Init.Overrun == ADC_OVR_DATA_PRESERVED) in HAL_ADC_IRQHandler()
2015 if (LL_ADC_REG_GetDMATransfer(hadc->Instance) != LL_ADC_REG_DMA_TRANSFER_NONE) in HAL_ADC_IRQHandler()
2024 SET_BIT(hadc->State, HAL_ADC_STATE_REG_OVR); in HAL_ADC_IRQHandler()
2027 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_OVR); in HAL_ADC_IRQHandler()
2035 hadc->ErrorCallback(hadc); in HAL_ADC_IRQHandler()
2037 HAL_ADC_ErrorCallback(hadc); in HAL_ADC_IRQHandler()
2042 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR); in HAL_ADC_IRQHandler()
2049 HAL_ADCEx_ChannelConfigReadyCallback(hadc); in HAL_ADC_IRQHandler()
2052 __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_CCRDY); in HAL_ADC_IRQHandler()
2061 __weak void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef *hadc) in HAL_ADC_ConvCpltCallback() argument
2064 UNUSED(hadc); in HAL_ADC_ConvCpltCallback()
2076 __weak void HAL_ADC_ConvHalfCpltCallback(ADC_HandleTypeDef *hadc) in HAL_ADC_ConvHalfCpltCallback() argument
2079 UNUSED(hadc); in HAL_ADC_ConvHalfCpltCallback()
2091 __weak void HAL_ADC_LevelOutOfWindowCallback(ADC_HandleTypeDef *hadc) in HAL_ADC_LevelOutOfWindowCallback() argument
2094 UNUSED(hadc); in HAL_ADC_LevelOutOfWindowCallback()
2113 __weak void HAL_ADC_ErrorCallback(ADC_HandleTypeDef *hadc) in HAL_ADC_ErrorCallback() argument
2116 UNUSED(hadc); in HAL_ADC_ErrorCallback()
2159 HAL_StatusTypeDef HAL_ADC_ConfigChannel(ADC_HandleTypeDef *hadc, ADC_ChannelConfTypeDef *pConfig) in HAL_ADC_ConfigChannel() argument
2166 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_ConfigChannel()
2170 if ((hadc->Init.ScanConvMode == ADC_SCAN_SEQ_FIXED) || in HAL_ADC_ConfigChannel()
2171 (hadc->Init.ScanConvMode == ADC_SCAN_SEQ_FIXED_BACKWARD)) in HAL_ADC_ConfigChannel()
2177 assert_param(IS_ADC_REGULAR_NB_CONV(hadc->Init.NbrOfConversion)); in HAL_ADC_ConfigChannel()
2182 __HAL_LOCK(hadc); in HAL_ADC_ConfigChannel()
2190 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_ConfigChannel()
2207 if ((hadc->Init.ScanConvMode == ADC_SCAN_SEQ_FIXED) || in HAL_ADC_ConfigChannel()
2208 (hadc->Init.ScanConvMode == ADC_SCAN_SEQ_FIXED_BACKWARD)) in HAL_ADC_ConfigChannel()
2212 LL_ADC_REG_SetSequencerChAdd(hadc->Instance, pConfig->Channel); in HAL_ADC_ConfigChannel()
2220 MODIFY_REG(hadc->ADCGroupRegularSequencerRanks, in HAL_ADC_ConfigChannel()
2228 if (((pConfig->Rank >> 2UL) + 1UL) <= hadc->Init.NbrOfConversion) in HAL_ADC_ConfigChannel()
2230 LL_ADC_REG_SetSequencerRanks(hadc->Instance, pConfig->Rank, pConfig->Channel); in HAL_ADC_ConfigChannel()
2235 LL_ADC_SetChannelSamplingTime(hadc->Instance, pConfig->Channel, pConfig->SamplingTime); in HAL_ADC_ConfigChannel()
2245 …tmp_config_internal_channel = LL_ADC_GetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instan… in HAL_ADC_ConfigChannel()
2252 LL_ADC_SetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance), in HAL_ADC_ConfigChannel()
2269 LL_ADC_SetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance), in HAL_ADC_ConfigChannel()
2275 LL_ADC_SetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance), in HAL_ADC_ConfigChannel()
2291 if ((hadc->Init.ScanConvMode == ADC_SCAN_SEQ_FIXED) || in HAL_ADC_ConfigChannel()
2292 (hadc->Init.ScanConvMode == ADC_SCAN_SEQ_FIXED_BACKWARD)) in HAL_ADC_ConfigChannel()
2296 LL_ADC_REG_SetSequencerChRem(hadc->Instance, pConfig->Channel); in HAL_ADC_ConfigChannel()
2304 …tmp_config_internal_channel = LL_ADC_GetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instan… in HAL_ADC_ConfigChannel()
2308 LL_ADC_SetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance), in HAL_ADC_ConfigChannel()
2313 LL_ADC_SetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance), in HAL_ADC_ConfigChannel()
2318 LL_ADC_SetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance), in HAL_ADC_ConfigChannel()
2335 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); in HAL_ADC_ConfigChannel()
2340 __HAL_UNLOCK(hadc); in HAL_ADC_ConfigChannel()
2367 HAL_StatusTypeDef HAL_ADC_AnalogWDGConfig(ADC_HandleTypeDef *hadc, ADC_AnalogWDGConfTypeDef *pAnalo… in HAL_ADC_AnalogWDGConfig() argument
2375 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_AnalogWDGConfig()
2386 if (hadc->Init.OversamplingMode == ENABLE) in HAL_ADC_AnalogWDGConfig()
2397 assert_param(IS_ADC_RANGE(ADC_GET_RESOLUTION(hadc), pAnalogWDGConfig->HighThreshold)); in HAL_ADC_AnalogWDGConfig()
2398 assert_param(IS_ADC_RANGE(ADC_GET_RESOLUTION(hadc), pAnalogWDGConfig->LowThreshold)); in HAL_ADC_AnalogWDGConfig()
2401 __HAL_LOCK(hadc); in HAL_ADC_AnalogWDGConfig()
2407 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in HAL_ADC_AnalogWDGConfig()
2414 if (LL_ADC_IsEnabled(hadc->Instance) != 0UL) in HAL_ADC_AnalogWDGConfig()
2417 tmp_hal_status = ADC_Disable(hadc); in HAL_ADC_AnalogWDGConfig()
2426 LL_ADC_SetAnalogWDMonitChannels(hadc->Instance, LL_ADC_AWD1, in HAL_ADC_AnalogWDGConfig()
2432 LL_ADC_SetAnalogWDMonitChannels(hadc->Instance, LL_ADC_AWD1, LL_ADC_AWD_ALL_CHANNELS_REG); in HAL_ADC_AnalogWDGConfig()
2436 LL_ADC_SetAnalogWDMonitChannels(hadc->Instance, LL_ADC_AWD1, LL_ADC_AWD_DISABLE); in HAL_ADC_AnalogWDGConfig()
2444 tmp_hal_status = ADC_Enable(hadc); in HAL_ADC_AnalogWDGConfig()
2449 CLEAR_BIT(hadc->State, HAL_ADC_STATE_AWD1); in HAL_ADC_AnalogWDGConfig()
2455 LL_ADC_ClearFlag_AWD1(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2460 LL_ADC_EnableIT_AWD1(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2464 LL_ADC_DisableIT_AWD1(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2477 …SET_BIT(hadc->Instance->AWD2CR, (1UL << __LL_ADC_CHANNEL_TO_DECIMAL_NB(pAnalogWDGConfig->Channel))… in HAL_ADC_AnalogWDGConfig()
2481 …SET_BIT(hadc->Instance->AWD3CR, (1UL << __LL_ADC_CHANNEL_TO_DECIMAL_NB(pAnalogWDGConfig->Channel))… in HAL_ADC_AnalogWDGConfig()
2486 LL_ADC_SetAnalogWDMonitChannels(hadc->Instance, in HAL_ADC_AnalogWDGConfig()
2492 …LL_ADC_SetAnalogWDMonitChannels(hadc->Instance, pAnalogWDGConfig->WatchdogNumber, LL_ADC_AWD_DISAB… in HAL_ADC_AnalogWDGConfig()
2499 CLEAR_BIT(hadc->State, HAL_ADC_STATE_AWD2); in HAL_ADC_AnalogWDGConfig()
2505 LL_ADC_ClearFlag_AWD2(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2510 LL_ADC_EnableIT_AWD2(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2514 LL_ADC_DisableIT_AWD2(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2521 CLEAR_BIT(hadc->State, HAL_ADC_STATE_AWD3); in HAL_ADC_AnalogWDGConfig()
2527 LL_ADC_ClearFlag_AWD3(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2532 LL_ADC_EnableIT_AWD3(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2536 LL_ADC_DisableIT_AWD3(hadc->Instance); in HAL_ADC_AnalogWDGConfig()
2549 …tmp_awd_high_threshold_shifted = ADC_AWD1THRESHOLD_SHIFT_RESOLUTION(hadc, pAnalogWDGConfig->HighTh… in HAL_ADC_AnalogWDGConfig()
2550 …tmp_awd_low_threshold_shifted = ADC_AWD1THRESHOLD_SHIFT_RESOLUTION(hadc, pAnalogWDGConfig->LowThr… in HAL_ADC_AnalogWDGConfig()
2563 …LL_ADC_ConfigAnalogWDThresholds(hadc->Instance, pAnalogWDGConfig->WatchdogNumber, tmp_awd_high_thr… in HAL_ADC_AnalogWDGConfig()
2566 __HAL_UNLOCK(hadc); in HAL_ADC_AnalogWDGConfig()
2603 uint32_t HAL_ADC_GetState(ADC_HandleTypeDef *hadc) in HAL_ADC_GetState() argument
2606 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_GetState()
2609 return hadc->State; in HAL_ADC_GetState()
2617 uint32_t HAL_ADC_GetError(ADC_HandleTypeDef *hadc) in HAL_ADC_GetError() argument
2620 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in HAL_ADC_GetError()
2622 return hadc->ErrorCode; in HAL_ADC_GetError()
2644 HAL_StatusTypeDef ADC_ConversionStop(ADC_HandleTypeDef *hadc) in ADC_ConversionStop() argument
2649 assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); in ADC_ConversionStop()
2653 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) != 0UL) in ADC_ConversionStop()
2657 if (LL_ADC_IsDisableOngoing(hadc->Instance) == 0UL) in ADC_ConversionStop()
2660 LL_ADC_REG_StopConversion(hadc->Instance); in ADC_ConversionStop()
2667 while ((hadc->Instance->CR & ADC_CR_ADSTART) != 0UL) in ADC_ConversionStop()
2672 if ((hadc->Instance->CR & ADC_CR_ADSTART) != 0UL) in ADC_ConversionStop()
2675 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in ADC_ConversionStop()
2678 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in ADC_ConversionStop()
2698 HAL_StatusTypeDef ADC_Enable(ADC_HandleTypeDef *hadc) in ADC_Enable() argument
2707 if (LL_ADC_IsEnabled(hadc->Instance) == 0UL) in ADC_Enable()
2710 …if ((hadc->Instance->CR & (ADC_CR_ADCAL | ADC_CR_ADSTP | ADC_CR_ADSTART | ADC_CR_ADDIS | ADC_CR_AD… in ADC_Enable()
2713 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in ADC_Enable()
2716 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in ADC_Enable()
2722 LL_ADC_Enable(hadc->Instance); in ADC_Enable()
2724 …if ((LL_ADC_GetCommonPathInternalCh(__LL_ADC_COMMON_INSTANCE(hadc->Instance)) & LL_ADC_PATH_INTERN… in ADC_Enable()
2742 if (hadc->Init.LowPowerAutoPowerOff != ENABLE) in ADC_Enable()
2747 while (__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_RDY) == 0UL) in ADC_Enable()
2757 if (LL_ADC_IsEnabled(hadc->Instance) == 0UL) in ADC_Enable()
2759 LL_ADC_Enable(hadc->Instance); in ADC_Enable()
2765 if (__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_RDY) == 0UL) in ADC_Enable()
2768 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in ADC_Enable()
2771 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in ADC_Enable()
2791 HAL_StatusTypeDef ADC_Disable(ADC_HandleTypeDef *hadc) in ADC_Disable() argument
2794 const uint32_t tmp_adc_is_disable_on_going = LL_ADC_IsDisableOngoing(hadc->Instance); in ADC_Disable()
2799 if ((LL_ADC_IsEnabled(hadc->Instance) != 0UL) in ADC_Disable()
2804 if ((hadc->Instance->CR & (ADC_CR_ADSTART | ADC_CR_ADEN)) == ADC_CR_ADEN) in ADC_Disable()
2807 LL_ADC_Disable(hadc->Instance); in ADC_Disable()
2808 __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_EOSMP | ADC_FLAG_RDY)); in ADC_Disable()
2813 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in ADC_Disable()
2816 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in ADC_Disable()
2825 while ((hadc->Instance->CR & ADC_CR_ADEN) != 0UL) in ADC_Disable()
2830 if ((hadc->Instance->CR & ADC_CR_ADEN) != 0UL) in ADC_Disable()
2833 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); in ADC_Disable()
2836 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in ADC_Disable()
2856 ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in ADC_DMAConvCplt() local
2859 if ((hadc->State & (HAL_ADC_STATE_ERROR_INTERNAL | HAL_ADC_STATE_ERROR_DMA)) == 0UL) in ADC_DMAConvCplt()
2862 SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); in ADC_DMAConvCplt()
2867 if ((LL_ADC_REG_IsTriggerSourceSWStart(hadc->Instance) != 0UL) in ADC_DMAConvCplt()
2868 && (hadc->Init.ContinuousConvMode == DISABLE) in ADC_DMAConvCplt()
2872 if (__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOS)) in ADC_DMAConvCplt()
2876 if (LL_ADC_REG_IsConversionOngoing(hadc->Instance) == 0UL) in ADC_DMAConvCplt()
2882 __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC | ADC_IT_EOS); in ADC_DMAConvCplt()
2885 ADC_STATE_CLR_SET(hadc->State, in ADC_DMAConvCplt()
2892 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); in ADC_DMAConvCplt()
2895 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); in ADC_DMAConvCplt()
2902 hadc->ConvCpltCallback(hadc); in ADC_DMAConvCplt()
2904 HAL_ADC_ConvCpltCallback(hadc); in ADC_DMAConvCplt()
2909 if ((hadc->State & HAL_ADC_STATE_ERROR_INTERNAL) != 0UL) in ADC_DMAConvCplt()
2913 hadc->ErrorCallback(hadc); in ADC_DMAConvCplt()
2915 HAL_ADC_ErrorCallback(hadc); in ADC_DMAConvCplt()
2921 hadc->DMA_Handle->XferErrorCallback(hdma); in ADC_DMAConvCplt()
2934 ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in ADC_DMAHalfConvCplt() local
2938 hadc->ConvHalfCpltCallback(hadc); in ADC_DMAHalfConvCplt()
2940 HAL_ADC_ConvHalfCpltCallback(hadc); in ADC_DMAHalfConvCplt()
2952 ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; in ADC_DMAError() local
2955 SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_DMA); in ADC_DMAError()
2958 SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_DMA); in ADC_DMAError()
2962 hadc->ErrorCallback(hadc); in ADC_DMAError()
2964 HAL_ADC_ErrorCallback(hadc); in ADC_DMAError()