feat(project): 更新项目配置并增加ESC EEPROM功能
- 添加新的SPI命令文件:app_spi_cmd_can_burst.cpp 和 app_spi_cmd_exmc_diag.cpp - 移除旧的SPI命令文件:app_spi_cmd_ota_wait.cpp, app_spi_cmd_ping.cpp, app_spi_cmd_can_bridge.cpp, app_spi_cmd_can_feedback.cpp, app_spi_cmd_id_snapshot.cpp, app_spi_cmd_adc_feedback.cpp, app_spi_cmd_motor_state.cpp, app_spi_cmd_motor_version.cpp, app_spi_cmd_motor_ota.cpp - 新增SSC EtherCAT从站协议栈相关文件组,包含头文件和源文件 - 添加ESC EEPROM操作相关的头文件和源文件 - 修正HBI寄存器EXMC偏移地址映射错误 - 实现8位、16位、32位ESC寄存器读写函数 - 改进EEPROM初始化逻辑,添加重试机制和诊断功能
This commit is contained in:
@@ -148,43 +148,14 @@ private:
|
||||
void updateDataReady();
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief CAN 反馈主动推送一步(非阻塞,由主循环每次迭代调用)。
|
||||
*
|
||||
* GD32 APP 主动循环推送 3 通道 × 2 页 CAN 反馈帧到 ESP32,替代 ESP32
|
||||
* 主动轮询。每次调用推进一帧:若上一帧尚未被 ESP32 读走则立即返回,
|
||||
* 否则构建当前 (channel, page) 的反馈 payload 并 requestEsp32Read() 推送,
|
||||
* 然后推进到下一页/下一通道。
|
||||
*
|
||||
* 1Hz 节流由 taskHeartbeat() 调用 canFeedbackStartRound() 激活每秒一轮,
|
||||
* 推完一轮后内部清除激活标志,等待下一次 taskHeartbeat() 触发。
|
||||
*/
|
||||
void canFeedbackPushStep();
|
||||
|
||||
/** @brief 激活新一轮 CAN 反馈推送(由 1Hz taskHeartbeat 调用)。 */
|
||||
void canFeedbackStartRound();
|
||||
|
||||
/**
|
||||
* @brief ADC 调试反馈(0xC4)主动推送一步。
|
||||
* @note CONFIG_SPI_ADC_FEEDBACK_ENABLE=0 时为空操作。
|
||||
*/
|
||||
void adcFeedbackPushStep();
|
||||
|
||||
/** @brief 激活一次 ADC 调试反馈推送(1Hz taskHeartbeat)。 */
|
||||
void adcFeedbackStartRound();
|
||||
|
||||
/**
|
||||
* @brief 多电机状态(0xC5)主动推送一步。
|
||||
* @note CONFIG_MOTOR_STATE_ENABLE=0 时为空操作。
|
||||
*/
|
||||
void motorStatePushStep();
|
||||
|
||||
/** @brief 激活新一轮多电机状态推送(1Hz taskHeartbeat)。 */
|
||||
void motorStateStartRound();
|
||||
/* 2026-08 请求驱动改造:0xC1 CAN 反馈 / 0xC5 电机状态 / 0xC4 ADC 已改
|
||||
* ESP32 周期查询(本端仅被动响应 handler),主动按铃推送函数整体移除
|
||||
* (canFeedbackPushStep/canFeedbackStartRound/adcFeedbackPushStep/
|
||||
* adcFeedbackStartRound/motorStatePushStep/motorStateStartRound)。 */
|
||||
|
||||
/**
|
||||
* @brief 多电机版本(0xC6)事件驱动推送步进:有 dirty 版本且 ring 空闲时按铃推一帧。
|
||||
* @note CONFIG_MOTOR_VERSION_ENABLE=0 时为空操作。优先级低于 0xC1/0xC5/0xC4。
|
||||
* @note CONFIG_MOTOR_VERSION_ENABLE=0 时为空操作。低频、事件驱动,保留推送。
|
||||
*/
|
||||
void motorVersionPushStep();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user