37#ifndef __EC_FSM_SLAVE_H__
38#define __EC_FSM_SLAVE_H__
EtherCAT datagram structure.
EtherCAT CoE state machines.
EtherCAT FoE state machines.
void ec_fsm_slave_set_ready(ec_fsm_slave_t *)
Sets the current state of the state machine to READY.
void ec_fsm_slave_clear(ec_fsm_slave_t *)
Destructor.
void ec_fsm_slave_init(ec_fsm_slave_t *, ec_slave_t *)
Constructor.
int ec_fsm_slave_exec(ec_fsm_slave_t *, ec_datagram_t *)
Executes the current state of the state machine.
int ec_fsm_slave_is_ready(const ec_fsm_slave_t *)
Returns, if the FSM is currently not busy and ready to execute.
EtherCAT CoE state machines.
Global definitions and macros.
EtherCAT register request structure.
EtherCAT CANopen SDO request structure.
Finite state machines for the CANopen over EtherCAT protocol.
Finite state machines for the CANopen-over-EtherCAT protocol.
Finite state machine of an EtherCAT slave.
ec_datagram_t * datagram
Previous state datagram.
void(* state)(ec_fsm_slave_t *, ec_datagram_t *)
State function.
ec_reg_request_t * reg_request
Register request to process.
ec_foe_request_t * foe_request
FoE request to process.
ec_sdo_request_t * sdo_request
SDO request to process.
ec_fsm_soe_t fsm_soe
SoE state machine.
ec_soe_request_t * soe_request
SoE request to process.
ec_slave_t * slave
slave the FSM runs on
off_t foe_index
Index to FoE write request data.
ec_fsm_foe_t fsm_foe
FoE state machine.
ec_fsm_coe_t fsm_coe
CoE state machine.
struct list_head list
Used for execution list.
Finite state machines for the Sercos over EtherCAT protocol.
Sercos-over-EtherCAT request.