Common application error handler
SourceCode
Common application errorでは、APP_ERROR_HANDLER(ERR_CODE)、APP_ERROR_CHECK(ERR_CODE)、APP_ERROR_CHECK_BOOL(BOOLEAN_VALUE)等をプログラム内に記述することで、エラーをハンドリングできる。
app_trace部分は、Debug Loggerの項目を参照。
main.c
#include <stdbool.h>
#include "nrf_delay.h"
#include "app_trace.h"
#include "app_error.h"
int counter = 0;
/**
* @brief エラーハンドラ.APP_ERROR_CHECKでエラーが発生している場合は、呼ばれる.
*/
void app_error_handler (uint32_t error_code, uint32_t line_num, const uint8_t *p_file_name)
{
app_trace_log("error_code: %d\r\n", error_code);
app_trace_log("line_num: %d\r\n", line_num);
app_trace_log("p_file_name: %s\r\n", p_file_name);
}
/**
* @brief Main処理.
*/
int main(void)
{
app_trace_init();
while (true)
{
app_trace_log("\n\rCounter:%d.\r\n", counter);
nrf_delay_ms(1000);
counter++;
APP_ERROR_CHECK(1);
}
}
Optionの設定
Common application error handlerを有効にするには、C/C++タブのDefineにDEBUGの記述を追記する。