Files
ESP32_COMM/main/monitor/can_feedback_task.h
T

35 lines
1.0 KiB
C
Raw Normal View History

/*
* can_feedback_task.h - GD32 周期查询 + 事件消费任务
*
* 2026-08 架构改造:0xC1 CAN 反馈请求驱动(canFdQueryFeedback);
* 0xC4 ADC / 0xC5 电机状态改为本任务周期查询(250ms/1s);
* 0xC6 电机版本 / 0xD2 电机 OTA 进度保留事件推送,由本任务 takeEvent 消费。
*/
#ifndef CAN_FEEDBACK_TASK_H
#define CAN_FEEDBACK_TASK_H
/** @brief 暂停/恢复周期查询与事件消费(OTA 期间调用 pause=true)。 */
void pauseCanFeedbackTask(bool pause);
/** @brief 查询是否处于暂停(OTA / send_batch / 电机 OTA 期间为 true)。
* 请求驱动的 SPI 查询(canFdQueryFeedback)在暂停期间应跳过。 */
bool canFeedbackPaused();
/** @brief 获取 can_fb 任务句柄(用于栈水位监控)。 */
TaskHandle_t getCanFeedbackTaskHandle();
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief 启动事件监听任务(幂等)。
* @return true 表示任务已存在或创建成功。
*/
bool startCanFeedbackTask();
#ifdef __cplusplus
}
#endif
#endif // CAN_FEEDBACK_TASK_H