components/esp32: add ESP_ERROR_CHECK
Convenience macro to do error check and assert in cases when error recovery is not expected
This commit is contained in:
parent
53de9f115f
commit
e9b54b6b45
1 changed files with 7 additions and 0 deletions
|
@ -15,6 +15,7 @@
|
||||||
#define __ESP_ERR_H__
|
#define __ESP_ERR_H__
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
#include <assert.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
@ -31,6 +32,12 @@ typedef int32_t esp_err_t;
|
||||||
#define ESP_ERR_INVALID_ARG 0x102
|
#define ESP_ERR_INVALID_ARG 0x102
|
||||||
#define ESP_ERR_INVALID_STATE 0x103
|
#define ESP_ERR_INVALID_STATE 0x103
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Macro which can be used to check the error code,
|
||||||
|
* and terminate the program in case the code is not ESP_OK.
|
||||||
|
* Prints the failed statement to serial output.
|
||||||
|
*/
|
||||||
|
#define ESP_ERROR_CHECK(x) do { esp_err_t rc = (x); if (rc != ESP_OK) { assert(0 && #x);} } while(0);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue