RTC HAL¶
-
group
nrf_rtc_hal
Hardware access layer for managing the Real Time Counter (RTC) peripheral.
Defines
-
NRF_RTC_CC_CHANNEL_COUNT
(id)¶ Macro for getting the number of compare channels available in a given RTC instance.
-
NRF_RTC_COUNTER_MAX
¶ Maximum value of the RTC counter.
-
RTC_INPUT_FREQ
¶ Input frequency of the RTC instance.
-
RTC_FREQ_TO_PRESCALER
(FREQ)¶ Macro for converting expected frequency to prescaler setting.
-
RTC_WRAP
(val)¶ Macro for trimming values to the RTC bit width.
-
RTC_CHANNEL_INT_MASK
(ch)¶ Macro for creating the interrupt bitmask for the specified compare channel.
-
RTC_CHANNEL_EVENT_ADDR
(ch)¶ Macro for obtaining the compare event for the specified channel.
Enums
-
enum
nrf_rtc_task_t
¶ RTC tasks.
Values:
-
enumerator
NRF_RTC_TASK_START
¶ Start.
-
enumerator
NRF_RTC_TASK_STOP
¶ Stop.
-
enumerator
NRF_RTC_TASK_CLEAR
¶ Clear.
-
enumerator
NRF_RTC_TASK_TRIGGER_OVERFLOW
¶ Trigger overflow.
-
enumerator
NRF_RTC_TASK_CAPTURE_0
¶ Capture the counter value on channel 0.
-
enumerator
NRF_RTC_TASK_CAPTURE_1
¶ Capture the counter value on channel 1.
-
enumerator
NRF_RTC_TASK_CAPTURE_2
¶ Capture the counter value on channel 2.
-
enumerator
NRF_RTC_TASK_CAPTURE_3
¶ Capture the counter value on channel 3.
-
enumerator
-
enum
nrf_rtc_event_t
¶ RTC events.
Values:
-
enumerator
NRF_RTC_EVENT_TICK
¶ Tick event.
-
enumerator
NRF_RTC_EVENT_OVERFLOW
¶ Overflow event.
-
enumerator
NRF_RTC_EVENT_COMPARE_0
¶ Compare 0 event.
-
enumerator
NRF_RTC_EVENT_COMPARE_1
¶ Compare 1 event.
-
enumerator
NRF_RTC_EVENT_COMPARE_2
¶ Compare 2 event.
-
enumerator
NRF_RTC_EVENT_COMPARE_3
¶ Compare 3 event.
-
enumerator
-
enum
nrf_rtc_int_t
¶ RTC interrupts.
Values:
-
enumerator
NRF_RTC_INT_TICK_MASK
¶ RTC interrupt from tick event.
-
enumerator
NRF_RTC_INT_OVERFLOW_MASK
¶ RTC interrupt from overflow event.
-
enumerator
NRF_RTC_INT_COMPARE0_MASK
¶ RTC interrupt from compare event on channel 0.
-
enumerator
NRF_RTC_INT_COMPARE1_MASK
¶ RTC interrupt from compare event on channel 1.
-
enumerator
NRF_RTC_INT_COMPARE2_MASK
¶ RTC interrupt from compare event on channel 2.
-
enumerator
NRF_RTC_INT_COMPARE3_MASK
¶ RTC interrupt from compare event on channel 3.
-
enumerator
Functions
-
NRF_STATIC_INLINE void
nrf_rtc_cc_set
(NRF_RTC_Type *p_reg, uint32_t ch, uint32_t cc_val)¶ Function for setting a compare value for a channel.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
ch – [in] Channel.
cc_val – [in] Compare value to be set.
-
NRF_STATIC_INLINE uint32_t
nrf_rtc_cc_get
(NRF_RTC_Type const *p_reg, uint32_t ch)¶ Function for returning the compare value for a channel.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
ch – [in] Channel.
- Returns
COMPARE[ch] value.
-
NRF_STATIC_INLINE void
nrf_rtc_int_enable
(NRF_RTC_Type *p_reg, uint32_t mask)¶ Function for enabling interrupts.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Interrupt mask to be enabled.
-
NRF_STATIC_INLINE void
nrf_rtc_int_disable
(NRF_RTC_Type *p_reg, uint32_t mask)¶ Function for disabling interrupts.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Interrupt mask to be disabled.
-
NRF_STATIC_INLINE uint32_t
nrf_rtc_int_enable_check
(NRF_RTC_Type const *p_reg, uint32_t mask)¶ Function for checking if the specified interrupts are enabled.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Mask of interrupts to be checked.
- Returns
Mask of enabled interrupts.
-
NRF_STATIC_INLINE void
nrf_rtc_subscribe_set
(NRF_RTC_Type *p_reg, nrf_rtc_task_t task, uint8_t channel)¶ Function for setting the subscribe configuration for a given RTC task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Task for which to set the configuration.
channel – [in] Channel through which to subscribe events.
-
NRF_STATIC_INLINE void
nrf_rtc_subscribe_clear
(NRF_RTC_Type *p_reg, nrf_rtc_task_t task)¶ Function for clearing the subscribe configuration for a given RTC task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Task for which to clear the configuration.
-
NRF_STATIC_INLINE void
nrf_rtc_publish_set
(NRF_RTC_Type *p_reg, nrf_rtc_event_t event, uint8_t channel)¶ Function for setting the publish configuration for a given RTC event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event for which to set the configuration.
channel – [in] Channel through which to publish the event.
-
NRF_STATIC_INLINE void
nrf_rtc_publish_clear
(NRF_RTC_Type *p_reg, nrf_rtc_event_t event)¶ Function for clearing the publish configuration for a given RTC event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event for which to clear the configuration.
-
NRF_STATIC_INLINE bool
nrf_rtc_event_check
(NRF_RTC_Type const *p_reg, nrf_rtc_event_t event)¶ Function for retrieving the state of the RTC event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event to be checked.
- Returns true
The event has been generated.
- Returns false
The event has not been generated.
-
NRF_STATIC_INLINE void
nrf_rtc_event_clear
(NRF_RTC_Type *p_reg, nrf_rtc_event_t event)¶ Function for clearing an event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event to be cleared.
-
NRF_STATIC_INLINE uint32_t
nrf_rtc_counter_get
(NRF_RTC_Type const *p_reg)¶ Function for returning a counter value.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
Counter value.
-
NRF_STATIC_INLINE void
nrf_rtc_prescaler_set
(NRF_RTC_Type *p_reg, uint32_t val)¶ Function for setting a prescaler value.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
val – [in] Value to set the prescaler to.
-
NRF_STATIC_INLINE uint32_t
nrf_rtc_prescaler_get
(NRF_RTC_Type const *p_reg)¶ Function for getting a prescaler value.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
Prescaler value.
-
NRF_STATIC_INLINE uint32_t
nrf_rtc_event_address_get
(NRF_RTC_Type const *p_reg, nrf_rtc_event_t event)¶ Function for returning the address of an event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Requested event.
- Returns
Address of the requested event register.
-
NRF_STATIC_INLINE uint32_t
nrf_rtc_task_address_get
(NRF_RTC_Type const *p_reg, nrf_rtc_task_t task)¶ Function for returning the address of a task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Requested task.
- Returns
Address of the requested task register.
-
NRF_STATIC_INLINE void
nrf_rtc_task_trigger
(NRF_RTC_Type *p_reg, nrf_rtc_task_t task)¶ Function for starting a task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Requested task.
-
NRF_STATIC_INLINE void
nrf_rtc_event_enable
(NRF_RTC_Type *p_reg, uint32_t mask)¶ Function for enabling events.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Mask of event flags to be enabled.
-
NRF_STATIC_INLINE void
nrf_rtc_event_disable
(NRF_RTC_Type *p_reg, uint32_t event)¶ Function for disabling an event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Requested event.
-
NRF_STATIC_INLINE nrf_rtc_event_t
nrf_rtc_compare_event_get
(uint8_t index)¶ Function for getting the COMPARE event associated with the specified compare channel.
- Parameters
index – [in] Compare channel index.
- Returns
Requested COMPARE event.
-