nRF51 SDK
|
APIs for SoftDevice management. More...
Modules | |
SoftDevice Manager Error Codes | |
Error definitions for the SDM API. | |
Macros | |
#define | SDM_SVC_BASE 0x10 |
SoftDevice Manager SVC Base number. | |
Typedefs | |
typedef uint32_t | nrf_clock_lfclksrc_t |
Type representing lfclk oscillator source. | |
typedef void(* | softdevice_assertion_handler_t )(uint32_t pc, uint16_t line_number, const uint8_t *p_file_name) |
SoftDevice Assertion Handler type. More... | |
Functions | |
uint32_t | sd_softdevice_enable (nrf_clock_lfclksrc_t clock_source, softdevice_assertion_handler_t assertion_handler) |
Enables the SoftDevice and by extension the protocol stack. More... | |
uint32_t | sd_softdevice_disable (void) |
Disables the SoftDevice and by extension the protocol stack. More... | |
uint32_t | sd_softdevice_is_enabled (uint8_t *p_softdevice_enabled) |
Check if the SoftDevice is enabled. More... | |
uint32_t | sd_softdevice_forward_to_application (void) |
Start forwarding interrupts to application. More... | |
typedef void(* softdevice_assertion_handler_t)(uint32_t pc, uint16_t line_number, const uint8_t *p_file_name) |
When an unexpected error occurs within the SoftDevice it will call the SoftDevice assertion handler callback. The protocol stack will be in an undefined state when this happens and the only way to recover will be to perform a reset, using e.g. CMSIS NVIC_SystemReset().
[in] | pc | The program counter of the failed assert. |
[in] | line_number | Line number where the assert failed. |
[in] | file_name | File name where the assert failed. |
anonymous enum |
anonymous enum |
uint32_t sd_softdevice_enable | ( | nrf_clock_lfclksrc_t | clock_source, |
softdevice_assertion_handler_t | assertion_handler | ||
) |
Idempotent function to enable the SoftDevice.
clock_source | Low frequency clock source and accuracy. (Note: In the case of XTAL source, the PPM accuracy of the chosen clock source must be greater than or equal to the actual characteristics of your XTAL clock). |
assertion_handler | Callback for SoftDevice assertions. |
uint32_t sd_softdevice_disable | ( | void | ) |
Idempotent function to disable the SoftDevice.
uint32_t sd_softdevice_is_enabled | ( | uint8_t * | p_softdevice_enabled | ) |
[out] | p_softdevice_enabled | If the SoftDevice is enabled: 1 else 0. |
uint32_t sd_softdevice_forward_to_application | ( | void | ) |
This function is only intended to be called when a bootloader is enabled is used. The bootloader should call this right before it starts the application. It is recommended that all interrupt sources are off when this is called, or you could end up having interrupts in the application being executed before main() of the application.