37 #ifndef __EC_FSM_SLAVE_H__ 38 #define __EC_FSM_SLAVE_H__ 83 #endif // __EC_FSM_SLAVE_H__ Finite state machines for the Sercos over EtherCAT protocol.
ec_foe_request_t * foe_request
FoE request to process.
ec_reg_request_t * reg_request
Register request to process.
ec_fsm_soe_t fsm_soe
SoE state machine.
Finite state machine of an EtherCAT slave.
ec_datagram_t * datagram
Previous state datagram.
ec_sdo_request_t * sdo_request
SDO request to process.
Global definitions and macros.
EtherCAT CoE state machines.
ec_slave_t * slave
slave the FSM runs on
void ec_fsm_slave_set_ready(ec_fsm_slave_t *)
Sets the current state of the state machine to READY.
off_t foe_index
Index to FoE write request data.
EtherCAT CANopen SDO request structure.
void ec_fsm_slave_clear(ec_fsm_slave_t *)
Destructor.
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.
ec_soe_request_t * soe_request
SoE request to process.
EtherCAT CoE state machines.
EtherCAT datagram structure.
EtherCAT register request structure.
struct list_head list
Used for execution list.
ec_fsm_foe_t fsm_foe
FoE state machine.
ec_fsm_coe_t fsm_coe
CoE state machine.
void ec_fsm_slave_init(ec_fsm_slave_t *, ec_slave_t *)
Constructor.
void(* state)(ec_fsm_slave_t *, ec_datagram_t *)
State function.
EtherCAT FoE state machines.
Sercos-over-EtherCAT request.
Finite state machines for the CANopen-over-EtherCAT protocol.
Finite state machines for the CANopen over EtherCAT protocol.