增加LED状态显示功能:

1、设备上电红灯红灯常亮
2、设备连接上COM口红灯闪烁
3、设备连接上BLE绿灯常亮
4、设备进入OTA绿灯闪烁
This commit is contained in:
2026-08-03 14:53:46 +08:00
parent 65af06eed9
commit 59361cd9d5
23 changed files with 6501 additions and 482 deletions
+63
View File
@@ -0,0 +1,63 @@
/******************************************************************************
* @file usr_led_status.h
* @brief 状态指示灯:红灯(PA8) / 绿灯(PA7),按上电、BLE、COM、OTA 显示
* @author cyWu <1917507415@qq.com>
* @date 2026.08.03
* @version V1.0.0
* @history
* - V1.0.0, 2026.08.03, cyWu, 首次发布
*
* 显示规则:
* 1. 上电 → 红灯常亮
* 2. BLE 连接 → 绿灯常亮
* 3. COM 打开 → 红灯 1Hz 闪烁
* 4. OTA 进行中 → 绿灯 1Hz 闪烁
******************************************************************************/
#ifndef __USR_LED_STATUS_H__
#define __USR_LED_STATUS_H__
#include <stdint.h>
/*============================================================================*/
/* 宏定义 (Macro definitions) */
/*============================================================================*/
#define USR_LED_TICK_MS (100) /**< 状态扫描节拍 ms */
#define USR_LED_BLINK_HZ (1) /**< 闪烁频率 */
/*============================================================================*/
/* 错误码 / 返回值 (Error codes) */
/*============================================================================*/
typedef enum {
USR_LED_OK = 0,
USR_LED_ERR_PARAM,
USR_LED_ERR_BUSY,
USR_LED_ERR_TIMEOUT,
USR_LED_ERR_NOT_INIT,
USR_LED_ERR_UNKNOWN
} UsrLed_Ret_t;
/*============================================================================*/
/* 外部接口 (Public API) */
/*============================================================================*/
/**
* @brief 初始化状态灯(上电立即红灯常亮,并启动 100ms 节拍)
* @return UsrLed_Ret_t 错误码
*/
UsrLed_Ret_t usr_led_status_init(void);
/**
* @brief 主处理 / 周期调用(一般由内部 timer 驱动)
*/
void usr_led_status_run(void);
/**
* @brief 获取当前初始化状态
* @return UsrLed_Ret_t
*/
UsrLed_Ret_t usr_led_status_get_status(void);
#endif /* __USR_LED_STATUS_H__ */