|
IgH EtherCAT Master
1.5.2
|
EtherCAT slave (SDO) state machine. More...
Go to the source code of this file.
Functions | |
| void | ec_fsm_slave_state_idle (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: IDLE. More... | |
| void | ec_fsm_slave_state_ready (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: READY. More... | |
| int | ec_fsm_slave_action_scan (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending scan. More... | |
| void | ec_fsm_slave_state_scan (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: SCAN. More... | |
| int | ec_fsm_slave_action_config (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending configuration. More... | |
| void | ec_fsm_slave_state_acknowledge (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: ACKNOWLEDGE. More... | |
| void | ec_fsm_slave_state_config (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: CONFIG. More... | |
| int | ec_fsm_slave_action_process_dict (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending SDO dictionary reads. More... | |
| void | ec_fsm_slave_state_dict_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: DICT_REQUEST. More... | |
| int | ec_fsm_slave_action_process_config_sdo (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending internal SDO requests and process one. More... | |
| int | ec_fsm_slave_action_process_sdo (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending SDO requests and process one. More... | |
| void | ec_fsm_slave_state_sdo_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: SDO_REQUEST. More... | |
| int | ec_fsm_slave_action_process_reg (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending register requests and process one. More... | |
| void | ec_fsm_slave_state_reg_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: Register request. More... | |
| int | ec_fsm_slave_action_process_foe (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending FoE requests and process one. More... | |
| void | ec_fsm_slave_state_foe_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: FOE REQUEST. More... | |
| int | ec_fsm_slave_action_process_soe (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending SoE requests and process one. More... | |
| void | ec_fsm_slave_state_soe_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: SOE_REQUEST. More... | |
| int | ec_fsm_slave_action_process_eoe (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending EoE IP parameter requests and process one. More... | |
| void | ec_fsm_slave_state_eoe_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: EOE_REQUEST. More... | |
| int | ec_fsm_slave_action_process_mbg (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Check for pending MBox Gateway requests and process one. More... | |
| void | ec_fsm_slave_state_mbg_request (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Slave state: MBG_REQUEST. More... | |
| void | ec_fsm_slave_init (ec_fsm_slave_t *fsm, ec_slave_t *slave) |
| Constructor. More... | |
| void | ec_fsm_slave_clear (ec_fsm_slave_t *fsm) |
| Destructor. More... | |
| int | ec_fsm_slave_exec (ec_fsm_slave_t *fsm, ec_datagram_t *datagram) |
| Executes the current state of the state machine. More... | |
| void | ec_fsm_slave_set_ready (ec_fsm_slave_t *fsm) |
| Sets the current state of the state machine to READY. More... | |
| static int | ec_slave_reconnect_to_eoe_handler (ec_slave_t *slave) |
| try to reconnect to an existing EoE handler. More... | |
| int | ec_fsm_slave_set_unready (ec_fsm_slave_t *fsm) |
| Sets the current state of the state machine to IDLE. More... | |
| int | ec_fsm_slave_is_ready (const ec_fsm_slave_t *fsm) |
| Returns, if the FSM is currently not busy and ready to execute. More... | |
EtherCAT slave (SDO) state machine.
Definition in file fsm_slave.c.
| void ec_fsm_slave_state_idle | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: IDLE.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 694 of file fsm_slave.c.
| void ec_fsm_slave_state_ready | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: READY.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 706 of file fsm_slave.c.
| int ec_fsm_slave_action_scan | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending scan.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 225 of file fsm_slave.c.
| void ec_fsm_slave_state_scan | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: SCAN.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 282 of file fsm_slave.c.
| int ec_fsm_slave_action_config | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending configuration.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 330 of file fsm_slave.c.
| void ec_fsm_slave_state_acknowledge | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: ACKNOWLEDGE.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 391 of file fsm_slave.c.
| void ec_fsm_slave_state_config | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: CONFIG.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 414 of file fsm_slave.c.
| int ec_fsm_slave_action_process_dict | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending SDO dictionary reads.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 448 of file fsm_slave.c.
| void ec_fsm_slave_state_dict_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: DICT_REQUEST.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 558 of file fsm_slave.c.
| int ec_fsm_slave_action_process_config_sdo | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending internal SDO requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 610 of file fsm_slave.c.
| int ec_fsm_slave_action_process_sdo | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending SDO requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 770 of file fsm_slave.c.
| void ec_fsm_slave_state_sdo_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: SDO_REQUEST.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 820 of file fsm_slave.c.
| int ec_fsm_slave_action_process_reg | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending register requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 856 of file fsm_slave.c.
| void ec_fsm_slave_state_reg_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: Register request.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 947 of file fsm_slave.c.
| int ec_fsm_slave_action_process_foe | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending FoE requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 999 of file fsm_slave.c.
| void ec_fsm_slave_state_foe_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: FOE REQUEST.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1052 of file fsm_slave.c.
| int ec_fsm_slave_action_process_soe | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending SoE requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1089 of file fsm_slave.c.
| void ec_fsm_slave_state_soe_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: SOE_REQUEST.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1226 of file fsm_slave.c.
| int ec_fsm_slave_action_process_eoe | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending EoE IP parameter requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1262 of file fsm_slave.c.
| void ec_fsm_slave_state_eoe_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: EOE_REQUEST.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1312 of file fsm_slave.c.
| int ec_fsm_slave_action_process_mbg | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Check for pending MBox Gateway requests and process one.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1141 of file fsm_slave.c.
| void ec_fsm_slave_state_mbg_request | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Slave state: MBG_REQUEST.
| fsm | Slave state machine. |
| datagram | Datagram to use. |
Definition at line 1192 of file fsm_slave.c.
| void ec_fsm_slave_init | ( | ec_fsm_slave_t * | fsm, |
| ec_slave_t * | slave | ||
| ) |
Constructor.
| fsm | Slave state machine. |
| slave | EtherCAT slave. |
Definition at line 74 of file fsm_slave.c.
| void ec_fsm_slave_clear | ( | ec_fsm_slave_t * | fsm | ) |
| int ec_fsm_slave_exec | ( | ec_fsm_slave_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Executes the current state of the state machine.
| fsm | Slave state machine. |
| datagram | New datagram to use. |
Definition at line 183 of file fsm_slave.c.
| void ec_fsm_slave_set_ready | ( | ec_fsm_slave_t * | fsm | ) |
Sets the current state of the state machine to READY.
| fsm | Slave state machine. |
Definition at line 209 of file fsm_slave.c.
|
static |
try to reconnect to an existing EoE handler.
| slave | EtherCAT slave |
Definition at line 249 of file fsm_slave.c.
| int ec_fsm_slave_set_unready | ( | ec_fsm_slave_t * | fsm | ) |
Sets the current state of the state machine to IDLE.
| fsm | Slave state machine. |
Definition at line 661 of file fsm_slave.c.
| int ec_fsm_slave_is_ready | ( | const ec_fsm_slave_t * | fsm | ) |
Returns, if the FSM is currently not busy and ready to execute.
| fsm | Slave state machine. |
Definition at line 681 of file fsm_slave.c.