Common application error handler and macros for utilizing a common error handler.
More...
|
void | app_error_handler (uint32_t error_code, uint32_t line_num, const uint8_t *p_file_name) |
| Function for error handling, which is called when an error has occurred. More...
|
|
void | app_error_handler_bare (ret_code_t error_code) |
| Function for error handling, which is called when an error has occurred. More...
|
|
void | app_error_save_and_stop (uint32_t id, uint32_t pc, uint32_t info) |
| Function for saving the parameters and entering an eternal loop, for debug purposes. More...
|
|
static __INLINE void | app_error_log (uint32_t id, uint32_t pc, uint32_t info) |
| Function for printing all error info (using nrf_log). More...
|
|
static __INLINE void | app_error_print (uint32_t id, uint32_t pc, uint32_t info) |
| Function for printing all error info (using printf). More...
|
|
void | app_error_fault_handler (uint32_t id, uint32_t pc, uint32_t info) |
| Callback function for asserts in the SoftDevice. More...
|
|
Common application error handler and macros for utilizing a common error handler.
Common application error handler.
#define APP_ERROR_CHECK |
( |
|
ERR_CODE | ) |
|
Value:do \
{ \
const uint32_t LOCAL_ERR_CODE = (ERR_CODE); \
if (LOCAL_ERR_CODE != NRF_SUCCESS) \
{ \
APP_ERROR_HANDLER(LOCAL_ERR_CODE); \
} \
} while (0)
Macro for calling error handler function if supplied error code any other than NRF_SUCCESS.
- Parameters
-
[in] | ERR_CODE | Error code supplied to the error handler. |
#define APP_ERROR_CHECK_BOOL |
( |
|
BOOLEAN_VALUE | ) |
|
Value:do \
{ \
const uint32_t LOCAL_BOOLEAN_VALUE = (BOOLEAN_VALUE); \
if (!LOCAL_BOOLEAN_VALUE) \
{ \
APP_ERROR_HANDLER(0); \
} \
} while (0)
Macro for calling error handler function if supplied boolean value is false.
- Parameters
-
[in] | BOOLEAN_VALUE | Boolean value to be evaluated. |
#define APP_ERROR_HANDLER |
( |
|
ERR_CODE | ) |
|
Value:do \
{ \
app_error_handler_bare((ERR_CODE)); \
} while (0)
Macro for calling error handler function.
- Parameters
-
[in] | ERR_CODE | Error code supplied to the error handler. |
#define NRF_FAULT_ID_SDK_RANGE_START 0x00004000 |
The start of the range of error IDs defined in the SDK.
void app_error_fault_handler |
( |
uint32_t |
id, |
|
|
uint32_t |
pc, |
|
|
uint32_t |
info |
|
) |
| |
Callback function for asserts in the SoftDevice.
A pointer to this function will be passed to the SoftDevice. This function will be called by the SoftDevice if certain unrecoverable errors occur within the application or SoftDevice.
See nrf_fault_handler_t for more details.
- Parameters
-
[in] | id | Fault identifier. See Fault ID types. |
[in] | pc | The program counter of the instruction that triggered the fault, or 0 if unavailable. |
[in] | info | Optional additional information regarding the fault. Refer to each fault identifier for details. |
void app_error_handler |
( |
uint32_t |
error_code, |
|
|
uint32_t |
line_num, |
|
|
const uint8_t * |
p_file_name |
|
) |
| |
Function for error handling, which is called when an error has occurred.
- Parameters
-
[in] | error_code | Error code supplied to the handler. |
[in] | line_num | Line number where the handler is called. |
[in] | p_file_name | Pointer to the file name. |
void app_error_handler_bare |
( |
ret_code_t |
error_code | ) |
|
Function for error handling, which is called when an error has occurred.
- Parameters
-
[in] | error_code | Error code supplied to the handler. |
static __INLINE void app_error_log |
( |
uint32_t |
id, |
|
|
uint32_t |
pc, |
|
|
uint32_t |
info |
|
) |
| |
|
static |
Function for printing all error info (using nrf_log).
Nrf_log library must be initialized using NRF_LOG_INIT macro before calling this function.
- Parameters
-
[in] | id | Fault identifier. See Fault ID types. |
[in] | pc | The program counter of the instruction that triggered the fault, or 0 if unavailable. |
[in] | info | Optional additional information regarding the fault. Refer to each fault identifier for details. |
< The start of the range of error IDs defined in the SDK.
< An error stemming from a call to ASSERT (nrf_assert.h). The info parameter is a pointer to an assert_info_t variable.
< The start of the range of error IDs defined in the SDK.
< An error stemming from a call to APP_ERROR_CHECK or APP_ERROR_CHECK_BOOL. The info parameter is a pointer to an error_info_t variable.
static __INLINE void app_error_print |
( |
uint32_t |
id, |
|
|
uint32_t |
pc, |
|
|
uint32_t |
info |
|
) |
| |
|
static |
Function for printing all error info (using printf).
- Parameters
-
[in] | id | Fault identifier. See Fault ID types. |
[in] | pc | The program counter of the instruction that triggered the fault, or 0 if unavailable. |
[in] | info | Optional additional information regarding the fault. Refer to each fault identifier for details. |
< The start of the range of error IDs defined in the SDK.
< An error stemming from a call to ASSERT (nrf_assert.h). The info parameter is a pointer to an assert_info_t variable.
< The start of the range of error IDs defined in the SDK.
< An error stemming from a call to APP_ERROR_CHECK or APP_ERROR_CHECK_BOOL. The info parameter is a pointer to an error_info_t variable.
void app_error_save_and_stop |
( |
uint32_t |
id, |
|
|
uint32_t |
pc, |
|
|
uint32_t |
info |
|
) |
| |
Function for saving the parameters and entering an eternal loop, for debug purposes.
- Parameters
-
[in] | id | Fault identifier. See Fault ID types. |
[in] | pc | The program counter of the instruction that triggered the fault, or 0 if unavailable. |
[in] | info | Optional additional information regarding the fault. Refer to each fault identifier for details. |