smallin/my_switcher

1.0.2

Latest
uploaded 3 hours ago
一个简单的开关组件

readme

# MySwitcher组件

- MySwitch是一个用于控制开头类的控制组件,提供开头状态控制、循环工作、工作结束回调支持。

## 主要特性
- 状态管理
    - IDLE:空闲状态
    - RUN:运行状态
    - PAUSE:暂停状态
    - FINISHED:工作完成状态
- 配置参数
    - 最大/最小工作时间
    - 最大/最小暂停时间
    - 最大/最小工作次数
- 工作完成回调:支持注册工作完成事件回调函数

## 快速开始
```
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

#include "esp_log.h"
#include "my_switcher.h"

#define TAG "main"

extern "C" void app_main(void)
{
    MySwitcher sw(GPIO_NUM_2, true);
    sw.SetWorkParam(1, 1, 3); 
    sw.SetFinishedCallback([](void*){
        ESP_LOGW(TAG, "All work done.");
    }, nullptr);
    sw.SetRunDoneCallback([](void*){
        ESP_LOGW(TAG, "One run done.");
    }, nullptr);
    sw.SetPauseDoneCallback([](void*){
        ESP_LOGW(TAG, "One pause done.");
    }, nullptr);
    sw.Start();

    while(1) {
        ESP_LOGI(TAG, "Current state: %s", sw.GetWorkState().c_str());
        vTaskDelay(pdMS_TO_TICKS(10 * 1000));
    }
}

```

Links

Supports all targets

License: Apache 2.0

To add this component to your project, run:

idf.py add-dependency "smallin/my_switcher^1.0.2"

or download archive

Stats

  • Archive size
    Archive size ~ 5.31 KB
  • Downloaded in total
    Downloaded in total 0 times
  • Downloaded this version
    This version: 0 times

Badge

smallin/my_switcher version: 1.0.2
|