Subversion Repositories LedShow

Rev

Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 9
Line 4... Line 4...
4
  * @author  MCD Application Team
4
  * @author  MCD Application Team
5
  * @brief   Header file of ADC LL module.
5
  * @brief   Header file of ADC LL module.
6
  ******************************************************************************
6
  ******************************************************************************
7
  * @attention
7
  * @attention
8
  *
8
  *
9
  * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
9
  * <h2><center>&copy; Copyright (c) 2017 STMicroelectronics.
-
 
10
  * All rights reserved.</center></h2>
10
  *
11
  *
11
  * Redistribution and use in source and binary forms, with or without modification,
12
  * This software component is licensed by ST under BSD 3-Clause license,
12
  * are permitted provided that the following conditions are met:
13
  * the "License"; You may not use this file except in compliance with the
13
  *   1. Redistributions of source code must retain the above copyright notice,
-
 
14
  *      this list of conditions and the following disclaimer.
-
 
15
  *   2. Redistributions in binary form must reproduce the above copyright notice,
-
 
16
  *      this list of conditions and the following disclaimer in the documentation
-
 
17
  *      and/or other materials provided with the distribution.
14
  * License. You may obtain a copy of the License at:
18
  *   3. Neither the name of STMicroelectronics nor the names of its contributors
-
 
19
  *      may be used to endorse or promote products derived from this software
15
  *                        opensource.org/licenses/BSD-3-Clause
20
  *      without specific prior written permission.
-
 
21
  *
-
 
22
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-
 
23
  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-
 
24
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-
 
25
  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
-
 
26
  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-
 
27
  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-
 
28
  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-
 
29
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-
 
30
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-
 
31
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
 
32
  *
16
  *
33
  ******************************************************************************
17
  ******************************************************************************
34
  */
18
  */
35
 
19
 
36
/* Define to prevent recursive inclusion -------------------------------------*/
20
/* Define to prevent recursive inclusion -------------------------------------*/
Line 240... Line 224...
240
  * @param  __REG__ Register basis from which the offset is applied.
224
  * @param  __REG__ Register basis from which the offset is applied.
241
  * @param  __REG_OFFFSET__ Offset to be applied (unit: number of registers).
225
  * @param  __REG_OFFFSET__ Offset to be applied (unit: number of registers).
242
  * @retval Pointer to register address
226
  * @retval Pointer to register address
243
  */
227
  */
244
#define __ADC_PTR_REG_OFFSET(__REG__, __REG_OFFFSET__)                         \
228
#define __ADC_PTR_REG_OFFSET(__REG__, __REG_OFFFSET__)                         \
245
 ((uint32_t *)((uint32_t) ((uint32_t)(&(__REG__)) + ((__REG_OFFFSET__) << 2U))))
229
 ((__IO uint32_t *)((uint32_t) ((uint32_t)(&(__REG__)) + ((__REG_OFFFSET__) << 2U))))
246
 
230
 
247
/**
231
/**
248
  * @}
232
  * @}
249
  */
233
  */
250
 
234
 
Line 2148... Line 2132...
2148
{
2132
{
2149
  /* Set bits with content of parameter "Channel" with bits position          */
2133
  /* Set bits with content of parameter "Channel" with bits position          */
2150
  /* in register and register position depending on parameter "Rank".         */
2134
  /* in register and register position depending on parameter "Rank".         */
2151
  /* Parameters "Rank" and "Channel" are used with masks because containing   */
2135
  /* Parameters "Rank" and "Channel" are used with masks because containing   */
2152
  /* other bits reserved for other purpose.                                   */
2136
  /* other bits reserved for other purpose.                                   */
2153
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SQR1, __ADC_MASK_SHIFT(Rank, ADC_REG_SQRX_REGOFFSET_MASK));
2137
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SQR1, __ADC_MASK_SHIFT(Rank, ADC_REG_SQRX_REGOFFSET_MASK));
2154
 
2138
 
2155
  MODIFY_REG(*preg,
2139
  MODIFY_REG(*preg,
2156
             ADC_CHANNEL_ID_NUMBER_MASK << (Rank & ADC_REG_RANK_ID_SQRX_MASK),
2140
             ADC_CHANNEL_ID_NUMBER_MASK << (Rank & ADC_REG_RANK_ID_SQRX_MASK),
2157
             (Channel & ADC_CHANNEL_ID_NUMBER_MASK) << (Rank & ADC_REG_RANK_ID_SQRX_MASK));
2141
             (Channel & ADC_CHANNEL_ID_NUMBER_MASK) << (Rank & ADC_REG_RANK_ID_SQRX_MASK));
2158
}
2142
}
Line 2238... Line 2222...
2238
  *             comparison with internal channel parameter to be done
2222
  *             comparison with internal channel parameter to be done
2239
  *             using helper macro @ref __LL_ADC_CHANNEL_INTERNAL_TO_EXTERNAL().
2223
  *             using helper macro @ref __LL_ADC_CHANNEL_INTERNAL_TO_EXTERNAL().
2240
  */
2224
  */
2241
__STATIC_INLINE uint32_t LL_ADC_REG_GetSequencerRanks(ADC_TypeDef *ADCx, uint32_t Rank)
2225
__STATIC_INLINE uint32_t LL_ADC_REG_GetSequencerRanks(ADC_TypeDef *ADCx, uint32_t Rank)
2242
{
2226
{
2243
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SQR1, __ADC_MASK_SHIFT(Rank, ADC_REG_SQRX_REGOFFSET_MASK));
2227
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SQR1, __ADC_MASK_SHIFT(Rank, ADC_REG_SQRX_REGOFFSET_MASK));
2244
 
2228
 
2245
  return (uint32_t) (READ_BIT(*preg,
2229
  return (uint32_t) (READ_BIT(*preg,
2246
                              ADC_CHANNEL_ID_NUMBER_MASK << (Rank & ADC_REG_RANK_ID_SQRX_MASK))
2230
                              ADC_CHANNEL_ID_NUMBER_MASK << (Rank & ADC_REG_RANK_ID_SQRX_MASK))
2247
                     >> (Rank & ADC_REG_RANK_ID_SQRX_MASK)
2231
                     >> (Rank & ADC_REG_RANK_ID_SQRX_MASK)
2248
                    );
2232
                    );
Line 2734... Line 2718...
2734
  * @param  OffsetLevel Value between Min_Data=0x000 and Max_Data=0xFFF
2718
  * @param  OffsetLevel Value between Min_Data=0x000 and Max_Data=0xFFF
2735
  * @retval None
2719
  * @retval None
2736
  */
2720
  */
2737
__STATIC_INLINE void LL_ADC_INJ_SetOffset(ADC_TypeDef *ADCx, uint32_t Rank, uint32_t OffsetLevel)
2721
__STATIC_INLINE void LL_ADC_INJ_SetOffset(ADC_TypeDef *ADCx, uint32_t Rank, uint32_t OffsetLevel)
2738
{
2722
{
2739
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JOFR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JOFRX_REGOFFSET_MASK));
2723
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JOFR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JOFRX_REGOFFSET_MASK));
2740
 
2724
 
2741
  MODIFY_REG(*preg,
2725
  MODIFY_REG(*preg,
2742
             ADC_JOFR1_JOFFSET1,
2726
             ADC_JOFR1_JOFFSET1,
2743
             OffsetLevel);
2727
             OffsetLevel);
2744
}
2728
}
Line 2761... Line 2745...
2761
  *         @arg @ref LL_ADC_INJ_RANK_4
2745
  *         @arg @ref LL_ADC_INJ_RANK_4
2762
  * @retval Value between Min_Data=0x000 and Max_Data=0xFFF
2746
  * @retval Value between Min_Data=0x000 and Max_Data=0xFFF
2763
  */
2747
  */
2764
__STATIC_INLINE uint32_t LL_ADC_INJ_GetOffset(ADC_TypeDef *ADCx, uint32_t Rank)
2748
__STATIC_INLINE uint32_t LL_ADC_INJ_GetOffset(ADC_TypeDef *ADCx, uint32_t Rank)
2765
{
2749
{
2766
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JOFR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JOFRX_REGOFFSET_MASK));
2750
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JOFR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JOFRX_REGOFFSET_MASK));
2767
 
2751
 
2768
  return (uint32_t)(READ_BIT(*preg,
2752
  return (uint32_t)(READ_BIT(*preg,
2769
                             ADC_JOFR1_JOFFSET1)
2753
                             ADC_JOFR1_JOFFSET1)
2770
                   );
2754
                   );
2771
}
2755
}
Line 2854... Line 2838...
2854
{
2838
{
2855
  /* Set bits with content of parameter "SamplingTime" with bits position     */
2839
  /* Set bits with content of parameter "SamplingTime" with bits position     */
2856
  /* in register and register position depending on parameter "Channel".      */
2840
  /* in register and register position depending on parameter "Channel".      */
2857
  /* Parameter "Channel" is used with masks because containing                */
2841
  /* Parameter "Channel" is used with masks because containing                */
2858
  /* other bits reserved for other purpose.                                   */
2842
  /* other bits reserved for other purpose.                                   */
2859
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SMPR1, __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPRX_REGOFFSET_MASK));
2843
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SMPR1, __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPRX_REGOFFSET_MASK));
2860
 
2844
 
2861
  MODIFY_REG(*preg,
2845
  MODIFY_REG(*preg,
2862
             ADC_SMPR2_SMP0 << __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK),
2846
             ADC_SMPR2_SMP0 << __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK),
2863
             SamplingTime   << __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK));
2847
             SamplingTime   << __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK));
2864
}
2848
}
Line 2923... Line 2907...
2923
  *         @arg @ref LL_ADC_SAMPLINGTIME_71CYCLES_5
2907
  *         @arg @ref LL_ADC_SAMPLINGTIME_71CYCLES_5
2924
  *         @arg @ref LL_ADC_SAMPLINGTIME_239CYCLES_5
2908
  *         @arg @ref LL_ADC_SAMPLINGTIME_239CYCLES_5
2925
  */
2909
  */
2926
__STATIC_INLINE uint32_t LL_ADC_GetChannelSamplingTime(ADC_TypeDef *ADCx, uint32_t Channel)
2910
__STATIC_INLINE uint32_t LL_ADC_GetChannelSamplingTime(ADC_TypeDef *ADCx, uint32_t Channel)
2927
{
2911
{
2928
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SMPR1, __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPRX_REGOFFSET_MASK));
2912
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->SMPR1, __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPRX_REGOFFSET_MASK));
2929
 
2913
 
2930
  return (uint32_t)(READ_BIT(*preg,
2914
  return (uint32_t)(READ_BIT(*preg,
2931
                             ADC_SMPR2_SMP0 << __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK))
2915
                             ADC_SMPR2_SMP0 << __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK))
2932
                    >> __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK)
2916
                    >> __ADC_MASK_SHIFT(Channel, ADC_CHANNEL_SMPx_BITOFFSET_MASK)
2933
                   );
2917
                   );
Line 3147... Line 3131...
3147
  * @param  AWDThresholdValue: Value between Min_Data=0x000 and Max_Data=0xFFF
3131
  * @param  AWDThresholdValue: Value between Min_Data=0x000 and Max_Data=0xFFF
3148
  * @retval None
3132
  * @retval None
3149
  */
3133
  */
3150
__STATIC_INLINE void LL_ADC_SetAnalogWDThresholds(ADC_TypeDef *ADCx, uint32_t AWDThresholdsHighLow, uint32_t AWDThresholdValue)
3134
__STATIC_INLINE void LL_ADC_SetAnalogWDThresholds(ADC_TypeDef *ADCx, uint32_t AWDThresholdsHighLow, uint32_t AWDThresholdValue)
3151
{
3135
{
3152
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->HTR, AWDThresholdsHighLow);
3136
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->HTR, AWDThresholdsHighLow);
3153
 
3137
 
3154
  MODIFY_REG(*preg,
3138
  MODIFY_REG(*preg,
3155
             ADC_HTR_HT,
3139
             ADC_HTR_HT,
3156
             AWDThresholdValue);
3140
             AWDThresholdValue);
3157
}
3141
}
Line 3170... Line 3154...
3170
  *         @arg @ref LL_ADC_AWD_THRESHOLD_LOW
3154
  *         @arg @ref LL_ADC_AWD_THRESHOLD_LOW
3171
  * @retval Value between Min_Data=0x000 and Max_Data=0xFFF
3155
  * @retval Value between Min_Data=0x000 and Max_Data=0xFFF
3172
*/
3156
*/
3173
__STATIC_INLINE uint32_t LL_ADC_GetAnalogWDThresholds(ADC_TypeDef *ADCx, uint32_t AWDThresholdsHighLow)
3157
__STATIC_INLINE uint32_t LL_ADC_GetAnalogWDThresholds(ADC_TypeDef *ADCx, uint32_t AWDThresholdsHighLow)
3174
{
3158
{
3175
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->HTR, AWDThresholdsHighLow);
3159
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->HTR, AWDThresholdsHighLow);
3176
 
3160
 
3177
  return (uint32_t)(READ_BIT(*preg, ADC_HTR_HT));
3161
  return (uint32_t)(READ_BIT(*preg, ADC_HTR_HT));
3178
}
3162
}
3179
 
3163
 
3180
/**
3164
/**
Line 3377... Line 3361...
3377
  * @param  ADCx ADC instance
3361
  * @param  ADCx ADC instance
3378
  * @retval None
3362
  * @retval None
3379
  */
3363
  */
3380
__STATIC_INLINE void LL_ADC_REG_StopConversionExtTrig(ADC_TypeDef *ADCx)
3364
__STATIC_INLINE void LL_ADC_REG_StopConversionExtTrig(ADC_TypeDef *ADCx)
3381
{
3365
{
3382
  CLEAR_BIT(ADCx->CR2, ADC_CR2_EXTSEL);
3366
  CLEAR_BIT(ADCx->CR2, ADC_CR2_EXTTRIG);
3383
}
3367
}
3384
 
3368
 
3385
/**
3369
/**
3386
  * @brief  Get ADC group regular conversion data, range fit for
3370
  * @brief  Get ADC group regular conversion data, range fit for
3387
  *         all ADC configurations: all ADC resolutions and
3371
  *         all ADC configurations: all ADC resolutions and
Line 3503... Line 3487...
3503
  * @param  ADCx ADC instance
3487
  * @param  ADCx ADC instance
3504
  * @retval None
3488
  * @retval None
3505
  */
3489
  */
3506
__STATIC_INLINE void LL_ADC_INJ_StopConversionExtTrig(ADC_TypeDef *ADCx)
3490
__STATIC_INLINE void LL_ADC_INJ_StopConversionExtTrig(ADC_TypeDef *ADCx)
3507
{
3491
{
3508
  CLEAR_BIT(ADCx->CR2, ADC_CR2_JEXTSEL);
3492
  CLEAR_BIT(ADCx->CR2, ADC_CR2_JEXTTRIG);
3509
}
3493
}
3510
 
3494
 
3511
/**
3495
/**
3512
  * @brief  Get ADC group regular conversion data, range fit for
3496
  * @brief  Get ADC group regular conversion data, range fit for
3513
  *         all ADC configurations: all ADC resolutions and
3497
  *         all ADC configurations: all ADC resolutions and
Line 3525... Line 3509...
3525
  *         @arg @ref LL_ADC_INJ_RANK_4
3509
  *         @arg @ref LL_ADC_INJ_RANK_4
3526
  * @retval Value between Min_Data=0x00000000 and Max_Data=0xFFFFFFFF
3510
  * @retval Value between Min_Data=0x00000000 and Max_Data=0xFFFFFFFF
3527
  */
3511
  */
3528
__STATIC_INLINE uint32_t LL_ADC_INJ_ReadConversionData32(ADC_TypeDef *ADCx, uint32_t Rank)
3512
__STATIC_INLINE uint32_t LL_ADC_INJ_ReadConversionData32(ADC_TypeDef *ADCx, uint32_t Rank)
3529
{
3513
{
3530
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JDR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JDRX_REGOFFSET_MASK));
3514
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JDR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JDRX_REGOFFSET_MASK));
3531
 
3515
 
3532
  return (uint32_t)(READ_BIT(*preg,
3516
  return (uint32_t)(READ_BIT(*preg,
3533
                             ADC_JDR1_JDATA)
3517
                             ADC_JDR1_JDATA)
3534
                   );
3518
                   );
3535
}
3519
}
Line 3552... Line 3536...
3552
  *         @arg @ref LL_ADC_INJ_RANK_4
3536
  *         @arg @ref LL_ADC_INJ_RANK_4
3553
  * @retval Value between Min_Data=0x000 and Max_Data=0xFFF
3537
  * @retval Value between Min_Data=0x000 and Max_Data=0xFFF
3554
  */
3538
  */
3555
__STATIC_INLINE uint16_t LL_ADC_INJ_ReadConversionData12(ADC_TypeDef *ADCx, uint32_t Rank)
3539
__STATIC_INLINE uint16_t LL_ADC_INJ_ReadConversionData12(ADC_TypeDef *ADCx, uint32_t Rank)
3556
{
3540
{
3557
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JDR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JDRX_REGOFFSET_MASK));
3541
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCx->JDR1, __ADC_MASK_SHIFT(Rank, ADC_INJ_JDRX_REGOFFSET_MASK));
3558
 
3542
 
3559
  return (uint16_t)(READ_BIT(*preg,
3543
  return (uint16_t)(READ_BIT(*preg,
3560
                             ADC_JDR1_JDATA)
3544
                             ADC_JDR1_JDATA)
3561
                   );
3545
                   );
3562
}
3546
}
Line 3682... Line 3666...
3682
  /* Note: on this STM32 serie, there is no flag ADC group regular           */
3666
  /* Note: on this STM32 serie, there is no flag ADC group regular           */
3683
  /*       end of unitary conversion.                                         */
3667
  /*       end of unitary conversion.                                         */
3684
  /*       Flag noted as "EOC" is corresponding to flag "EOS"                 */
3668
  /*       Flag noted as "EOC" is corresponding to flag "EOS"                 */
3685
  /*       in other STM32 families).                                          */
3669
  /*       in other STM32 families).                                          */
3686
 
3670
 
3687
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCxy_COMMON->SR, 1U);
3671
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCxy_COMMON->SR, 1U);
3688
 
3672
 
3689
  return (READ_BIT(*preg, LL_ADC_FLAG_EOS_SLV) == (LL_ADC_FLAG_EOS_SLV));
3673
  return (READ_BIT(*preg, LL_ADC_FLAG_EOS_SLV) == (LL_ADC_FLAG_EOS_SLV));
3690
}
3674
}
3691
 
3675
 
3692
 
3676
 
Line 3718... Line 3702...
3718
  /* Note: on this STM32 serie, there is no flag ADC group injected          */
3702
  /* Note: on this STM32 serie, there is no flag ADC group injected          */
3719
  /*       end of unitary conversion.                                         */
3703
  /*       end of unitary conversion.                                         */
3720
  /*       Flag noted as "JEOC" is corresponding to flag "JEOS"               */
3704
  /*       Flag noted as "JEOC" is corresponding to flag "JEOS"               */
3721
  /*       in other STM32 families).                                          */
3705
  /*       in other STM32 families).                                          */
3722
 
3706
 
3723
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCxy_COMMON->SR, 1U);
3707
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCxy_COMMON->SR, 1U);
3724
 
3708
 
3725
  return (READ_BIT(*preg, LL_ADC_FLAG_JEOS_SLV) == (LL_ADC_FLAG_JEOS_SLV));
3709
  return (READ_BIT(*preg, LL_ADC_FLAG_JEOS_SLV) == (LL_ADC_FLAG_JEOS_SLV));
3726
}
3710
}
3727
 
3711
 
3728
/**
3712
/**
Line 3744... Line 3728...
3744
  *         (can be set directly from CMSIS definition or by using helper macro @ref __LL_ADC_COMMON_INSTANCE() )
3728
  *         (can be set directly from CMSIS definition or by using helper macro @ref __LL_ADC_COMMON_INSTANCE() )
3745
  * @retval State of bit (1 or 0).
3729
  * @retval State of bit (1 or 0).
3746
  */
3730
  */
3747
__STATIC_INLINE uint32_t LL_ADC_IsActiveFlag_SLV_AWD1(ADC_Common_TypeDef *ADCxy_COMMON)
3731
__STATIC_INLINE uint32_t LL_ADC_IsActiveFlag_SLV_AWD1(ADC_Common_TypeDef *ADCxy_COMMON)
3748
{
3732
{
3749
  register uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCxy_COMMON->SR, 1U);
3733
  register __IO uint32_t *preg = __ADC_PTR_REG_OFFSET(ADCxy_COMMON->SR, 1U);
3750
 
3734
 
3751
  return (READ_BIT(*preg, LL_ADC_FLAG_AWD1) == (LL_ADC_FLAG_AWD1));
3735
  return (READ_BIT(*preg, LL_ADC_FLAG_AWD1) == (LL_ADC_FLAG_AWD1));
3752
}
3736
}
3753
 
3737
 
3754
#endif /* ADC_MULTIMODE_SUPPORT */
3738
#endif /* ADC_MULTIMODE_SUPPORT */