20#ifndef STM32F4xx_LL_RNG_H
21#define STM32F4xx_LL_RNG_H
57#define LL_RNG_SR_DRDY RNG_SR_DRDY
58#define LL_RNG_SR_CECS RNG_SR_CECS
59#define LL_RNG_SR_SECS RNG_SR_SECS
60#define LL_RNG_SR_CEIS RNG_SR_CEIS
61#define LL_RNG_SR_SEIS RNG_SR_SEIS
70#define LL_RNG_CR_IE RNG_CR_IE
95#define LL_RNG_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
103#define LL_RNG_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__)
127__STATIC_INLINE
void LL_RNG_Enable(RNG_TypeDef *RNGx)
129 SET_BIT(RNGx->CR, RNG_CR_RNGEN);
138__STATIC_INLINE
void LL_RNG_Disable(RNG_TypeDef *RNGx)
140 CLEAR_BIT(RNGx->CR, RNG_CR_RNGEN);
149__STATIC_INLINE uint32_t LL_RNG_IsEnabled(
const RNG_TypeDef *RNGx)
151 return ((READ_BIT(RNGx->CR, RNG_CR_RNGEN) == (RNG_CR_RNGEN)) ? 1UL : 0UL);
168__STATIC_INLINE uint32_t LL_RNG_IsActiveFlag_DRDY(
const RNG_TypeDef *RNGx)
170 return ((READ_BIT(RNGx->SR, RNG_SR_DRDY) == (RNG_SR_DRDY)) ? 1UL : 0UL);
179__STATIC_INLINE uint32_t LL_RNG_IsActiveFlag_CECS(
const RNG_TypeDef *RNGx)
181 return ((READ_BIT(RNGx->SR, RNG_SR_CECS) == (RNG_SR_CECS)) ? 1UL : 0UL);
190__STATIC_INLINE uint32_t LL_RNG_IsActiveFlag_SECS(
const RNG_TypeDef *RNGx)
192 return ((READ_BIT(RNGx->SR, RNG_SR_SECS) == (RNG_SR_SECS)) ? 1UL : 0UL);
201__STATIC_INLINE uint32_t LL_RNG_IsActiveFlag_CEIS(
const RNG_TypeDef *RNGx)
203 return ((READ_BIT(RNGx->SR, RNG_SR_CEIS) == (RNG_SR_CEIS)) ? 1UL : 0UL);
212__STATIC_INLINE uint32_t LL_RNG_IsActiveFlag_SEIS(
const RNG_TypeDef *RNGx)
214 return ((READ_BIT(RNGx->SR, RNG_SR_SEIS) == (RNG_SR_SEIS)) ? 1UL : 0UL);
223__STATIC_INLINE
void LL_RNG_ClearFlag_CEIS(RNG_TypeDef *RNGx)
225 WRITE_REG(RNGx->SR, ~RNG_SR_CEIS);
234__STATIC_INLINE
void LL_RNG_ClearFlag_SEIS(RNG_TypeDef *RNGx)
236 WRITE_REG(RNGx->SR, ~RNG_SR_SEIS);
254__STATIC_INLINE
void LL_RNG_EnableIT(RNG_TypeDef *RNGx)
256 SET_BIT(RNGx->CR, RNG_CR_IE);
266__STATIC_INLINE
void LL_RNG_DisableIT(RNG_TypeDef *RNGx)
268 CLEAR_BIT(RNGx->CR, RNG_CR_IE);
278__STATIC_INLINE uint32_t LL_RNG_IsEnabledIT(
const RNG_TypeDef *RNGx)
280 return ((READ_BIT(RNGx->CR, RNG_CR_IE) == (RNG_CR_IE)) ? 1UL : 0UL);
297__STATIC_INLINE uint32_t LL_RNG_ReadRandData32(
const RNG_TypeDef *RNGx)
299 return (uint32_t)(READ_REG(RNGx->DR));
306#if defined(USE_FULL_LL_DRIVER)
310ErrorStatus LL_RNG_DeInit(
const RNG_TypeDef *RNGx);