![]() |
nRF5 SDK
v12.3.0
|
| Choose documentation: | nRF5 SDK | S130 SoftDevice API | S132 SoftDevice API | S212 SoftDevice API | S332 SoftDevice API |
nRF51 Series only: Hardware access layer for managing the analog-to-digital converter (ADC). More...
Data Structures | |
| struct | nrf_adc_config_t |
| Analog-to-digital converter configuration. More... | |
Macros | |
| #define | NRF_ADC_CONFIG_DEFAULT |
Enumerations | |
| enum | nrf_adc_int_mask_t { NRF_ADC_INT_END_MASK = ADC_INTENSET_END_Msk } |
| ADC interrupts. More... | |
| enum | nrf_adc_config_resolution_t { NRF_ADC_CONFIG_RES_8BIT = ADC_CONFIG_RES_8bit, NRF_ADC_CONFIG_RES_9BIT = ADC_CONFIG_RES_9bit, NRF_ADC_CONFIG_RES_10BIT = ADC_CONFIG_RES_10bit } |
| Resolution of the analog-to-digital converter. More... | |
| enum | nrf_adc_config_scaling_t { NRF_ADC_CONFIG_SCALING_INPUT_FULL_SCALE = ADC_CONFIG_INPSEL_AnalogInputNoPrescaling, NRF_ADC_CONFIG_SCALING_INPUT_TWO_THIRDS = ADC_CONFIG_INPSEL_AnalogInputTwoThirdsPrescaling, NRF_ADC_CONFIG_SCALING_INPUT_ONE_THIRD = ADC_CONFIG_INPSEL_AnalogInputOneThirdPrescaling, NRF_ADC_CONFIG_SCALING_SUPPLY_TWO_THIRDS = ADC_CONFIG_INPSEL_SupplyTwoThirdsPrescaling, NRF_ADC_CONFIG_SCALING_SUPPLY_ONE_THIRD = ADC_CONFIG_INPSEL_SupplyOneThirdPrescaling } |
| Scaling factor of the analog-to-digital conversion. More... | |
| enum | nrf_adc_config_reference_t { NRF_ADC_CONFIG_REF_VBG = ADC_CONFIG_REFSEL_VBG, NRF_ADC_CONFIG_REF_SUPPLY_ONE_HALF = ADC_CONFIG_REFSEL_SupplyOneHalfPrescaling, NRF_ADC_CONFIG_REF_SUPPLY_ONE_THIRD = ADC_CONFIG_REFSEL_SupplyOneThirdPrescaling, NRF_ADC_CONFIG_REF_EXT_REF0, NRF_ADC_CONFIG_REF_EXT_REF1 } |
| Reference selection of the analog-to-digital converter. More... | |
| enum | nrf_adc_config_input_t { NRF_ADC_CONFIG_INPUT_DISABLED = ADC_CONFIG_PSEL_Disabled, NRF_ADC_CONFIG_INPUT_0 = ADC_CONFIG_PSEL_AnalogInput0, NRF_ADC_CONFIG_INPUT_1 = ADC_CONFIG_PSEL_AnalogInput1, NRF_ADC_CONFIG_INPUT_2 = ADC_CONFIG_PSEL_AnalogInput2, NRF_ADC_CONFIG_INPUT_3 = ADC_CONFIG_PSEL_AnalogInput3, NRF_ADC_CONFIG_INPUT_4 = ADC_CONFIG_PSEL_AnalogInput4, NRF_ADC_CONFIG_INPUT_5 = ADC_CONFIG_PSEL_AnalogInput5, NRF_ADC_CONFIG_INPUT_6 = ADC_CONFIG_PSEL_AnalogInput6, NRF_ADC_CONFIG_INPUT_7 = ADC_CONFIG_PSEL_AnalogInput7 } |
| Input selection of the analog-to-digital converter. More... | |
| enum | nrf_adc_task_t { NRF_ADC_TASK_START = offsetof(NRF_ADC_Type, TASKS_START), NRF_ADC_TASK_STOP = offsetof(NRF_ADC_Type, TASKS_STOP) } |
| Analog-to-digital converter tasks. More... | |
| enum | nrf_adc_event_t { NRF_ADC_EVENT_END = offsetof(NRF_ADC_Type, EVENTS_END) } |
| Analog-to-digital converter events. More... | |
Functions | |
| void | nrf_adc_configure (nrf_adc_config_t *config) |
| Function for configuring ADC. More... | |
| int32_t | nrf_adc_convert_single (nrf_adc_config_input_t input) |
| Blocking function for executing a single ADC conversion. More... | |
| __STATIC_INLINE void | nrf_adc_input_select (nrf_adc_config_input_t input) |
| Function for selecting ADC input. More... | |
| __STATIC_INLINE int32_t | nrf_adc_result_get (void) |
| Function for retrieving the ADC conversion result. More... | |
| __STATIC_INLINE bool | nrf_adc_is_busy (void) |
| Function for checking whether the ADC is busy. More... | |
| __STATIC_INLINE uint32_t | nrf_adc_int_get (uint32_t mask) |
| Function for getting the ADC's enabled interrupts. More... | |
| __STATIC_INLINE void | nrf_adc_start (void) |
| Function for starting conversion. More... | |
| __STATIC_INLINE void | nrf_adc_stop (void) |
| Function for stopping conversion. More... | |
| __STATIC_INLINE bool | nrf_adc_conversion_finished (void) |
| Function for checking if the requested ADC conversion has ended. More... | |
| __STATIC_INLINE void | nrf_adc_conversion_event_clean (void) |
| Function for clearing the conversion END event. | |
| __STATIC_INLINE uint32_t | nrf_adc_task_address_get (nrf_adc_task_t adc_task) |
| Function for getting the address of an ADC task register. More... | |
| __STATIC_INLINE uint32_t | nrf_adc_event_address_get (nrf_adc_event_t adc_event) |
| Function for getting the address of a specific ADC event register. More... | |
| __STATIC_INLINE void | nrf_adc_config_set (uint32_t configuration) |
| Function for setting the CONFIG register in ADC. More... | |
| __STATIC_INLINE void | nrf_adc_event_clear (nrf_adc_event_t event) |
| Function for clearing an ADC event. More... | |
| __STATIC_INLINE bool | nrf_adc_event_check (nrf_adc_event_t event) |
| Function for checking state of an ADC event. More... | |
| __STATIC_INLINE void | nrf_adc_int_enable (uint32_t int_mask) |
| Function for enabling specified interrupts. More... | |
| __STATIC_INLINE void | nrf_adc_int_disable (uint32_t int_mask) |
| Function for disabling specified interrupts. More... | |
| __STATIC_INLINE bool | nrf_adc_int_enable_check (nrf_adc_int_mask_t int_mask) |
| Function for retrieving the state of a given interrupt. More... | |
| __STATIC_INLINE void | nrf_adc_task_trigger (nrf_adc_task_t task) |
| Function for activating a specific ADC task. More... | |
| __STATIC_INLINE void | nrf_adc_enable (void) |
| Function for enabling ADC. | |
| __STATIC_INLINE void | nrf_adc_disable (void) |
| Function for disabling ADC. | |
nRF51 Series only: Hardware access layer for managing the analog-to-digital converter (ADC).
| #define NRF_ADC_CONFIG_DEFAULT |
Default ADC configuration.
Input selection of the analog-to-digital converter.
Reference selection of the analog-to-digital converter.
Scaling factor of the analog-to-digital conversion.
| enum nrf_adc_event_t |
| enum nrf_adc_int_mask_t |
| enum nrf_adc_task_t |
| __STATIC_INLINE void nrf_adc_config_set | ( | uint32_t | configuration | ) |
Function for setting the CONFIG register in ADC.
| [in] | configuration | Value to be written to the CONFIG register. |
| void nrf_adc_configure | ( | nrf_adc_config_t * | config | ) |
Function for configuring ADC.
This function powers on the analog-to-digital converter and configures it. After the configuration, the ADC is in DISABLE state and must be enabled before using it.
| [in] | config | Configuration parameters. |
| __STATIC_INLINE bool nrf_adc_conversion_finished | ( | void | ) |
Function for checking if the requested ADC conversion has ended.
| true | If the task has finished. |
| false | If the task is still running. |
| int32_t nrf_adc_convert_single | ( | nrf_adc_config_input_t | input | ) |
Blocking function for executing a single ADC conversion.
This function selects the desired input, starts a single conversion, waits for it to finish, and returns the result. After the input is selected, the analog-to-digital converter is left in STOP state. The function does not check if the ADC is initialized and powered.
| [in] | input | Input to be selected. |
| __STATIC_INLINE uint32_t nrf_adc_event_address_get | ( | nrf_adc_event_t | adc_event | ) |
Function for getting the address of a specific ADC event register.
| [in] | adc_event | ADC event. |
| __STATIC_INLINE bool nrf_adc_event_check | ( | nrf_adc_event_t | event | ) |
Function for checking state of an ADC event.
| [in] | event | Event to check. |
| true | If the event is set. |
| false | If the event is not set. |
| __STATIC_INLINE void nrf_adc_event_clear | ( | nrf_adc_event_t | event | ) |
Function for clearing an ADC event.
| [in] | event | Event to clear. |
| __STATIC_INLINE void nrf_adc_input_select | ( | nrf_adc_config_input_t | input | ) |
Function for selecting ADC input.
This function selects the active input of ADC. Ensure that the ADC is powered on and in IDLE state before calling this function.
| [in] | input | Input to be selected. |
| __STATIC_INLINE void nrf_adc_int_disable | ( | uint32_t | int_mask | ) |
Function for disabling specified interrupts.
| [in] | int_mask | Interrupts to disable. |
| __STATIC_INLINE void nrf_adc_int_enable | ( | uint32_t | int_mask | ) |
Function for enabling specified interrupts.
| [in] | int_mask | Interrupts to enable. |
| __STATIC_INLINE bool nrf_adc_int_enable_check | ( | nrf_adc_int_mask_t | int_mask | ) |
Function for retrieving the state of a given interrupt.
| [in] | int_mask | Interrupt to check. |
| true | If the interrupt is enabled. |
| false | If the interrupt is not enabled. |
| __STATIC_INLINE uint32_t nrf_adc_int_get | ( | uint32_t | mask | ) |
Function for getting the ADC's enabled interrupts.
| [in] | mask | Mask of interrupts to check. |
| __STATIC_INLINE bool nrf_adc_is_busy | ( | void | ) |
Function for checking whether the ADC is busy.
This function checks whether the analog-to-digital converter is busy with a conversion.
| true | If the ADC is busy. |
| false | If the ADC is not busy. |
| __STATIC_INLINE int32_t nrf_adc_result_get | ( | void | ) |
Function for retrieving the ADC conversion result.
This function retrieves and returns the last analog-to-digital conversion result.
| __STATIC_INLINE void nrf_adc_start | ( | void | ) |
Function for starting conversion.
| __STATIC_INLINE void nrf_adc_stop | ( | void | ) |
Function for stopping conversion.
If the analog-to-digital converter is in inactive state, power consumption is reduced.
| __STATIC_INLINE uint32_t nrf_adc_task_address_get | ( | nrf_adc_task_t | adc_task | ) |
Function for getting the address of an ADC task register.
| [in] | adc_task | ADC task. |
| __STATIC_INLINE void nrf_adc_task_trigger | ( | nrf_adc_task_t | task | ) |
Function for activating a specific ADC task.
| [in] | task | Task to activate. |