Kenji Arai / mbed-os_TYBLE16

Dependents:   TYBLE16_simple_data_logger TYBLE16_MP3_Air

Embed: (wiki syntax)

« Back to documentation index

ResetReason Class Reference

ResetReason Class Reference
[ResetReason class]

A platform-independent method of checking the cause of the last system reset. More...

#include <ResetReason.h>

Static Public Member Functions

static reset_reason_t get ()
 Get the platform independent reason code for the last system reset.
static uint32_t get_raw ()
 Get the platform specific reason code for the last system reset.

Detailed Description

A platform-independent method of checking the cause of the last system reset.

When the system restarts, the reason for the restart is contained in the system registers at boot time in a platform specific manner. This API provides a generic method of fetching the reason for the restart.

Definition at line 39 of file ResetReason.h.


Member Function Documentation

reset_reason_t get (  ) [static]

Get the platform independent reason code for the last system reset.

Returns:
enum containing the last reset reason for the board.

Example:

  const reset_reason_t reason = ResetReason::get();

  if (reason == RESET_REASON_WATCHDOG) {
      printf("Watchdog reset\n");
      rollback();
  }

Definition at line 24 of file ResetReason.cpp.

uint32_t get_raw (  ) [static]

Get the platform specific reason code for the last system reset.

Platform specific reasons that are not covered by the reset_reason_t enum will cause the ResetReason::get() function to return RESET_REASON_PLATFORM. In order to get the actual reason the register value must be fetched directly using this function and interpreted in a platform specific manner.

Returns:
value containing the reset reason register for the given platform. If the platform contains reset reasons across multiple registers they will be concatenated here.

Example:

 if (ResetReason::get() == RESET_REASON_PLATFORM) {
     const uint32_t platform_reason = ResetReason::get_raw();
 }

Definition at line 38 of file ResetReason.cpp.