完成了WIFI连接,MQTT订阅发布,光照监测,温湿度数据,继电器控制
This commit is contained in:
55
components/relay_ctrl/include/relay_ctrl.h
Normal file
55
components/relay_ctrl/include/relay_ctrl.h
Normal file
@@ -0,0 +1,55 @@
|
||||
#pragma once
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
#include "driver/gpio.h"
|
||||
#include "esp_err.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
RELAY_CTRL_ID_1 = 0,
|
||||
RELAY_CTRL_ID_2 = 1,
|
||||
RELAY_CTRL_ID_MAX,
|
||||
} relay_ctrl_id_t;
|
||||
|
||||
/**
|
||||
* @brief 初始化双继电器控制模块。
|
||||
*
|
||||
* @param relay1_gpio 继电器1控制引脚
|
||||
* @param relay2_gpio 继电器2控制引脚
|
||||
* @param active_high 继电器有效电平,true=高电平吸合,false=低电平吸合
|
||||
*/
|
||||
esp_err_t relay_ctrl_init(gpio_num_t relay1_gpio, gpio_num_t relay2_gpio, bool active_high);
|
||||
|
||||
/**
|
||||
* @brief 设置指定继电器状态。
|
||||
*
|
||||
* @param relay_id 继电器编号
|
||||
* @param on true=吸合,false=断开
|
||||
*/
|
||||
esp_err_t relay_ctrl_set(relay_ctrl_id_t relay_id, bool on);
|
||||
|
||||
/**
|
||||
* @brief 翻转指定继电器状态。
|
||||
*/
|
||||
esp_err_t relay_ctrl_toggle(relay_ctrl_id_t relay_id);
|
||||
|
||||
/**
|
||||
* @brief 获取指定继电器状态。
|
||||
*
|
||||
* @param relay_id 继电器编号
|
||||
* @param on_out [out] 当前逻辑状态,true=吸合,false=断开
|
||||
*/
|
||||
esp_err_t relay_ctrl_get(relay_ctrl_id_t relay_id, bool *on_out);
|
||||
|
||||
/**
|
||||
* @brief 一次性设置两个继电器状态。
|
||||
*/
|
||||
esp_err_t relay_ctrl_set_all(bool relay1_on, bool relay2_on);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user