IgH EtherCAT Master  1.6.9
fsm_soe.h File Reference

EtherCAT CoE state machines. More...

Go to the source code of this file.

Data Structures

struct  ec_fsm_soe
 Finite state machines for the Sercos over EtherCAT protocol. More...

Typedefs

typedef struct ec_fsm_soe ec_fsm_soe_t

Functions

void ec_fsm_soe_init (ec_fsm_soe_t *)
 Constructor.
void ec_fsm_soe_clear (ec_fsm_soe_t *)
 Destructor.
void ec_fsm_soe_transfer (ec_fsm_soe_t *, ec_slave_t *, ec_soe_request_t *)
 Starts to transfer an IDN to/from a slave.
int ec_fsm_soe_exec (ec_fsm_soe_t *, ec_datagram_t *)
 Executes the current state of the state machine.
int ec_fsm_soe_success (const ec_fsm_soe_t *)
 Returns, if the state machine terminated with success.

Detailed Description

EtherCAT CoE state machines.

Definition in file fsm_soe.h.

Typedef Documentation

◆ ec_fsm_soe_t

typedef struct ec_fsm_soe ec_fsm_soe_t
See also
ec_fsm_soe

Definition at line 39 of file fsm_soe.h.

Function Documentation

◆ ec_fsm_soe_init()

void ec_fsm_soe_init ( ec_fsm_soe_t * fsm)

Constructor.

Parameters
fsmfinite state machine

Definition at line 107 of file fsm_soe.c.

◆ ec_fsm_soe_clear()

void ec_fsm_soe_clear ( ec_fsm_soe_t * fsm)

Destructor.

Parameters
fsmfinite state machine

Definition at line 120 of file fsm_soe.c.

◆ ec_fsm_soe_transfer()

void ec_fsm_soe_transfer ( ec_fsm_soe_t * fsm,
ec_slave_t * slave,
ec_soe_request_t * request )

Starts to transfer an IDN to/from a slave.

Parameters
fsmState machine.
slaveEtherCAT slave.
requestSoE request.

Definition at line 130 of file fsm_soe.c.

◆ ec_fsm_soe_exec()

int ec_fsm_soe_exec ( ec_fsm_soe_t * fsm,
ec_datagram_t * datagram )

Executes the current state of the state machine.

Returns
1 if the datagram was used, else 0.
Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 152 of file fsm_soe.c.

◆ ec_fsm_soe_success()

int ec_fsm_soe_success ( const ec_fsm_soe_t * fsm)

Returns, if the state machine terminated with success.

Returns
non-zero if successful.
Parameters
fsmFinite state machine

Definition at line 187 of file fsm_soe.c.