1. void ESC_config (esc_cfg_t * cfg);
- 功能:配置EtherCAT从站。
- 参数:
esc_cfg_t *cfg
指向配置结构体的指针,该结构体包含从站的配置参数。 - 解释:该函数用于初始化或更新从站的配置,如通信参数、同步管理器设置等。
2. void ESC_ALerror (uint16_t errornumber);
- 功能:报告应用层(AL)错误。
- 参数:
uint16_t errornumber
错误代码,用于标识具体的错误类型。 - 解释:当从站遇到无法处理的问题时,该函数用于向主站报告错误。
3. void ESC_ALeventwrite (uint32_t event);
- 功能:写入应用层事件。
- 参数:
uint32_t event
事件代码,用于标识特定的事件。 - 解释:该函数用于记录从站内部发生的事件,供主站查询或处理。
4. uint32_t ESC_ALeventread (void);
- 功能:读取应用层事件。
- 参数:无。
- 返回值:
uint32_t
事件代码,表示当前读取到的事件。 - 解释:该函数用于获取从站内部发生的事件代码。
5. void ESC_ALeventmaskwrite (uint32_t mask);
- 功能:写入应用层事件掩码。
- 参数:
uint32_t mask
事件掩码,用于过滤不需要关注的事件。 - 解释:该函数用于设置事件掩码,以便只关注特定类型的事件。
6. uint32_t ESC_ALeventmaskread (void);
- 功能:读取应用层事件掩码。
- 参数:无。
- 返回值:
uint32_t
当前的事件掩码。 - 解释:该函数用于获取当前设置的事件掩码。
7. void ESC_ALstatus (uint8_t status);
- 功能:设置应用层状态。
- 参数:
uint8_t status
状态代码,用于标识从站的当前状态。 - 解释:该函数用于更新从站的应用层状态。
8. void ESC_ALstatusgotoerror (uint8_t status, uint16_t errornumber);
- 功能:将应用层状态设置为错误状态。
- 参数:
uint8_t status
错误前的状态;uint16_t errornumber
错误代码。 - 解释:当从站遇到错误时,该函数用于将状态设置为错误状态,并记录错误代码。
9. void ESC_SMstatus (uint8_t n);
- 功能:设置同步管理器(Sync Manager)状态。
- 参数:
uint8_t n
同步管理器的编号。 - 解释:该函数用于更新特定同步管理器的状态。
10. uint8_t ESC_WDstatus (void);
- 功能:读取看门狗(Watchdog)状态。
- 参数:无。
- 返回值:
uint8_t
看门狗状态,表示从站的健康状态。 - 解释:看门狗机制用于监控从站的运行状态,该函数用于获取当前看门狗状态。
11. uint8_t ESC_claimbuffer (void);
- 功能:请求缓冲区。
- 参数:无。
- 返回值:
uint8_t
缓冲区请求结果,成功或失败。 - 解释:该函数用于请求用于数据交换的缓冲区。
12. uint8_t ESC_startmbx (uint8_t state);
- 功能:启动邮箱(MBX)通信。
- 参数:
uint8_t state
启动时的状态。 - 返回值:
uint8_t
启动结果,成功或失败。 - 解释:该函数用于启动从站与主站之间的邮箱通信。
13. void ESC_stopmbx (void);
- 功能:停止邮箱通信。
- 参数:无。
- 解释:该函数用于停止从站与主站之间的邮箱通信。
14. void MBX_error (uint16_t error);
- 功能:报告邮箱错误。
- 参数:
uint16_t error
错误代码。 - 解释:当邮箱通信过程中发生错误时,该函数用于报告错误。
15. uint8_t ESC_mbxprocess (void);
- 功能:处理邮箱数据。
- 参数:无。
- 返回值:
uint8_t
处理结果,成功或失败。 - 解释:该函数用于处理从邮箱接收到的数据。
16. void ESC_xoeprocess (void);
- 功能:处理输入/输出(XOE)数据。
- 参数:无。
- 解释:该函数用于处理从站的输入和输出数据。
17. uint8_t ESC_startinput (uint8_t state);
- 功能:启动输入过程。
- 参数:
uint8_t state
启动时的状态。 - 返回值:
uint8_t
启动结果,成功或失败。 - 解释:该函数用于启动从站的输入过程。
18. void ESC_stopinput (void);
- 功能:停止输入过程。
- 参数:无。
- 解释:该函数用于停止从站的输入过程。
19. uint8_t ESC_startoutput (uint8_t state);
- 功能:启动输出过程。
- 参数:
uint8_t state
启动时的状态。 - 返回值:
uint8_t
启动结果,成功或失败。 - 解释:该函数用于启动从站的输出过程。
20. void ESC_stopoutput (void);
- 功能:停止输出过程。
- 参数:无。
- 解释:该函数用于停止从站的输出过程。
21. void ESC_state (void);
- 功能:处理从站状态机。
- 参数:无。
- 解释:该函数是从站状态机的核心,负责根据当前状态和事件更新从站状态。
22. void ESC_sm_act_event (void);
- 功能:处理同步管理器激活事件。
- 参数:无。
- 解释:该函数用于处理同步管理器状态变化的事件,特别是激活事件。