esp_timer: Add an option to skip unhandled events for periodic timers

- Added an option to skip unhandled events for periodic timers. Useful for light sleep.
- Added doc about this case
- Added Test a latency between a call of callback and real event (14-16us). and UT to check skip_unhandled_events.
- Fixed for esp_timer_dump() if name of timer is NULL
- Refactored timer_process_alarm()
- Added the delete function after using in UTs
This commit is contained in:
KonstantinKondrashov
2020-11-13 16:46:21 +08:00
parent 66416d1a8b
commit aa96c9a4d8
9 changed files with 221 additions and 67 deletions

View File

@@ -41,6 +41,7 @@
#include <stdint.h>
#include <stdio.h>
#include <stdbool.h>
#include "esp_err.h"
#ifdef __cplusplus
@@ -81,6 +82,7 @@ typedef struct {
void* arg; //!< Argument to pass to the callback
esp_timer_dispatch_t dispatch_method; //!< Call the callback from task or from ISR
const char* name; //!< Timer name, used in esp_timer_dump function
bool skip_unhandled_events; //!< Skip unhandled events for periodic timers
} esp_timer_create_args_t;
/**