- 新增SPI 0xC8命令用于切换CAN通道收发器Silent模式(只听不发) - 在canFdSetTxSilent函数中实现静默模式控制逻辑 - 在HTTP API中添加POST /can/silent端点 - 更新CAN协议文档,记录新命令和错误码E6 - 修改bus_state位图,添加bit5表示静默状态 fix(can): 优化CAN反馈任务内存使用和链路离线处理 - 将任务栈上的临时缓冲区改为静态分配,防止栈溢出 - 添加链路在线检测,在离线状态下进入休眠退避 - 修复queryMotorStatePages和queryAdcFeedback函数返回值类型 - 优化UDP日志发送的冷却退避机制 chore(config): 更新调试日志配置和版本信息 - 在VSCode设置中添加ESP-IDF串口配置 - 添加SPI调试日志级别编译期开关CONFIG_SPI_DEBUG_LOG_LEVEL - 更新固件版本至0.5.2,记录相关变更内容 - 调整SPI和CAN反馈任务的栈大小配置
35 lines
1.0 KiB
C
35 lines
1.0 KiB
C
/*
|
|
* 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
|