- 添加s_lastLoggedError数组跟踪各通道最后记录的错误计数 - 实现错误计数变化时才触发告警,避免重复打印 - 扩展错误日志信息,包含TEC、REC和总线状态详细信息 - 修复P0/P1页面携带相同统计数据时的重复打印问题 perf(ota): 移除冗余的OTA协调器状态检查方法 - 删除isGd32BusyState、isEsp32BusyState等未使用的状态判断方法 - 移除esp32FinalizeErrCategory错误分类函数 - 清理相关的头文件声明,减少代码冗余 refactor(relay): 移除未使用的中继状态获取方法 - 删除getRelaySeq、getRelayTotalPackets状态查询接口 - 移除getGd32Version版本获取方法 - 清理StateLockGuard中的isLocked方法
36 lines
886 B
C
36 lines
886 B
C
/*
|
|
* can_feedback_task.h - 周期性轮询 GD32 CAN 反馈快照的任务接口
|
|
*/
|
|
#ifndef CAN_FEEDBACK_TASK_H
|
|
#define CAN_FEEDBACK_TASK_H
|
|
|
|
#include <stdint.h>
|
|
#include "transport/canfd_bridge.h"
|
|
|
|
/** @brief 暂停/恢复 CAN 反馈轮询(OTA 期间调用 pause=true)。 */
|
|
void pauseCanFeedbackTask(bool pause);
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/**
|
|
* @brief 启动 1Hz CAN 反馈轮询任务(幂等)。
|
|
* @return true 表示任务已存在或创建成功。
|
|
*/
|
|
bool startCanFeedbackTask();
|
|
|
|
/**
|
|
* @brief 拷贝某通道的最新反馈快照(线程安全)。
|
|
* @param channel 0/1/2。
|
|
* @param out 输出缓冲。
|
|
* @return true 表示拿到一份有效数据,false 表示通道无效或尚未拿到第一份。
|
|
*/
|
|
bool getLatestCanFeedback(uint8_t channel, can_feedback_result_t *out);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // CAN_FEEDBACK_TASK_H
|