RNG HAL

nRF5 SDK v17.0.2

Hardware access layer (HAL) for managing the Random Number Generator (RNG) peripheral. More...

Enumerations

enum nrf_rng_task_t {
NRF_RNG_TASK_START = offsetof(NRF_RNG_Type, TASKS_START),
NRF_RNG_TASK_STOP = offsetof(NRF_RNG_Type, TASKS_STOP)
}
RNG tasks. More...
enum nrf_rng_event_t { NRF_RNG_EVENT_VALRDY = offsetof(NRF_RNG_Type, EVENTS_VALRDY) }
RNG events. More...
enum nrf_rng_int_mask_t { NRF_RNG_INT_VALRDY_MASK = RNG_INTENSET_VALRDY_Msk }
RNG interrupts. More...
enum nrf_rng_short_mask_t { NRF_RNG_SHORT_VALRDY_STOP_MASK = RNG_SHORTS_VALRDY_STOP_Msk }
Types of RNG shortcuts. More...

Functions

__STATIC_INLINE void nrf_rng_int_enable (uint32_t mask)
Function for enabling interrupts. More...
__STATIC_INLINE void nrf_rng_int_disable (uint32_t mask)
Function for disabling interrupts. More...
__STATIC_INLINE bool nrf_rng_int_get ( nrf_rng_int_mask_t mask)
Function for getting the state of the specified interrupt. More...
__STATIC_INLINE uint32_t * nrf_rng_task_address_get ( nrf_rng_task_t rng_task)
Function for getting the address of the specified task. More...
__STATIC_INLINE void nrf_rng_task_trigger ( nrf_rng_task_t rng_task)
Function for triggering the specified task. More...
__STATIC_INLINE uint32_t * nrf_rng_event_address_get ( nrf_rng_event_t rng_event)
Function for getting address of the specified event. More...
__STATIC_INLINE void nrf_rng_event_clear ( nrf_rng_event_t rng_event)
Function for clearing the specified event. More...
__STATIC_INLINE bool nrf_rng_event_get ( nrf_rng_event_t rng_event)
Function for getting the state of the specified event. More...
__STATIC_INLINE void nrf_rng_shorts_enable (uint32_t mask)
Function for setting shortcuts. More...
__STATIC_INLINE void nrf_rng_shorts_disable (uint32_t mask)
Function for clearing shortcuts. More...
__STATIC_INLINE uint8_t nrf_rng_random_value_get (void)
Function for getting the previously generated random value. More...
__STATIC_INLINE void nrf_rng_error_correction_enable (void)
Function for enabling digital error correction.
__STATIC_INLINE void nrf_rng_error_correction_disable (void)
Function for disabling digital error correction.

Detailed Description

Hardware access layer (HAL) for managing the Random Number Generator (RNG) peripheral.

Enumeration Type Documentation

RNG events.

Enumerator
NRF_RNG_EVENT_VALRDY

New random number generated event.

RNG interrupts.

Enumerator
NRF_RNG_INT_VALRDY_MASK

Mask for enabling or disabling an interrupt on VALRDY event.

Types of RNG shortcuts.

Enumerator
NRF_RNG_SHORT_VALRDY_STOP_MASK

Mask for setting shortcut between EVENT_VALRDY and TASK_STOP.

RNG tasks.

Enumerator
NRF_RNG_TASK_START

Start the random number generator.

NRF_RNG_TASK_STOP

Stop the random number generator.

Function Documentation

__STATIC_INLINE uint32_t* nrf_rng_event_address_get ( nrf_rng_event_t rng_event )

Function for getting address of the specified event.

This function can be used by the PPI module.

Parameters
[in] rng_event The specified event.
Returns
Address of the specified event.
__STATIC_INLINE void nrf_rng_event_clear ( nrf_rng_event_t rng_event )

Function for clearing the specified event.

Parameters
[in] rng_event The specified event.
__STATIC_INLINE bool nrf_rng_event_get ( nrf_rng_event_t rng_event )

Function for getting the state of the specified event.

Parameters
[in] rng_event The specified event.
Return values
true The event is not set.
false The event is set.
__STATIC_INLINE void nrf_rng_int_disable ( uint32_t mask )

Function for disabling interrupts.

Parameters
[in] mask Mask of interrupts to be disabled.
__STATIC_INLINE void nrf_rng_int_enable ( uint32_t mask )

Function for enabling interrupts.

Parameters
[in] mask Mask of interrupts to be enabled.
__STATIC_INLINE bool nrf_rng_int_get ( nrf_rng_int_mask_t mask )

Function for getting the state of the specified interrupt.

Parameters
[in] mask Interrupts to be checked.
Return values
true The interrupt is not enabled.
false The interrupt is enabled.
__STATIC_INLINE uint8_t nrf_rng_random_value_get ( void )

Function for getting the previously generated random value.

Returns
Previously generated random value.
__STATIC_INLINE void nrf_rng_shorts_disable ( uint32_t mask )

Function for clearing shortcuts.

Parameters
[in] mask Mask of shortcuts.
__STATIC_INLINE void nrf_rng_shorts_enable ( uint32_t mask )

Function for setting shortcuts.

Parameters
[in] mask Mask of shortcuts.
__STATIC_INLINE uint32_t* nrf_rng_task_address_get ( nrf_rng_task_t rng_task )

Function for getting the address of the specified task.

This function can be used by the PPI module.

Parameters
[in] rng_task The specified task.
Returns
Address of the specified task.
__STATIC_INLINE void nrf_rng_task_trigger ( nrf_rng_task_t rng_task )

Function for triggering the specified task.

Parameters
[in] rng_task The specified Task.