IgH EtherCAT Master  1.5.2
fsm_eoe.c File Reference

EtherCAT EoE state machines. More...

Go to the source code of this file.

Macros

#define EC_EOE_RESPONSE_TIMEOUT   3000
 Maximum time to wait for a set IP parameter response.
 

Functions

void ec_fsm_eoe_set_ip_start (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 EoE state: SET IP START. More...
 
void ec_fsm_eoe_set_ip_request (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 EoE state: SET IP REQUEST. More...
 
void ec_fsm_eoe_set_ip_check (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 EoE state: SET IP CHECK. More...
 
void ec_fsm_eoe_set_ip_response (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 EoE state: SET IP RESPONSE. More...
 
void ec_fsm_eoe_set_ip_response_data (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 EoE state: SET IP RESPONSE DATA. More...
 
void ec_fsm_eoe_end (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 State: END. More...
 
void ec_fsm_eoe_error (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 State: ERROR. More...
 
void ec_fsm_eoe_init (ec_fsm_eoe_t *fsm)
 Constructor. More...
 
void ec_fsm_eoe_clear (ec_fsm_eoe_t *fsm)
 Destructor. More...
 
void ec_fsm_eoe_set_ip_param (ec_fsm_eoe_t *fsm, ec_slave_t *slave, ec_eoe_request_t *request)
 Starts to set the EoE IP partameters of a slave. More...
 
int ec_fsm_eoe_exec (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 Executes the current state of the state machine. More...
 
int ec_fsm_eoe_success (const ec_fsm_eoe_t *fsm)
 Returns, if the state machine terminated with success. More...
 
int ec_fsm_eoe_prepare_set (ec_fsm_eoe_t *fsm, ec_datagram_t *datagram)
 Prepare a set IP parameters operation. More...
 

Detailed Description

EtherCAT EoE state machines.

Definition in file fsm_eoe.c.

Function Documentation

◆ ec_fsm_eoe_set_ip_start()

void ec_fsm_eoe_set_ip_start ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

EoE state: SET IP START.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 241 of file fsm_eoe.c.

◆ ec_fsm_eoe_set_ip_request()

void ec_fsm_eoe_set_ip_request ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

EoE state: SET IP REQUEST.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 275 of file fsm_eoe.c.

◆ ec_fsm_eoe_set_ip_check()

void ec_fsm_eoe_set_ip_check ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

EoE state: SET IP CHECK.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 335 of file fsm_eoe.c.

◆ ec_fsm_eoe_set_ip_response()

void ec_fsm_eoe_set_ip_response ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

EoE state: SET IP RESPONSE.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 400 of file fsm_eoe.c.

◆ ec_fsm_eoe_set_ip_response_data()

void ec_fsm_eoe_set_ip_response_data ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

EoE state: SET IP RESPONSE DATA.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 439 of file fsm_eoe.c.

◆ ec_fsm_eoe_end()

void ec_fsm_eoe_end ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

State: END.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 527 of file fsm_eoe.c.

◆ ec_fsm_eoe_error()

void ec_fsm_eoe_error ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

State: ERROR.

Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 516 of file fsm_eoe.c.

◆ ec_fsm_eoe_init()

void ec_fsm_eoe_init ( ec_fsm_eoe_t fsm)

Constructor.

Parameters
fsmfinite state machine

Definition at line 63 of file fsm_eoe.c.

◆ ec_fsm_eoe_clear()

void ec_fsm_eoe_clear ( ec_fsm_eoe_t fsm)

Destructor.

Parameters
fsmfinite state machine

Definition at line 79 of file fsm_eoe.c.

◆ ec_fsm_eoe_set_ip_param()

void ec_fsm_eoe_set_ip_param ( ec_fsm_eoe_t fsm,
ec_slave_t slave,
ec_eoe_request_t request 
)

Starts to set the EoE IP partameters of a slave.

Parameters
fsmState machine.
slaveEtherCAT slave.
requestEoE request.

Definition at line 89 of file fsm_eoe.c.

◆ ec_fsm_eoe_exec()

int ec_fsm_eoe_exec ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

Executes the current state of the state machine.

Returns
1 if the state machine is still in progress, else 0.
Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 106 of file fsm_eoe.c.

◆ ec_fsm_eoe_success()

int ec_fsm_eoe_success ( const ec_fsm_eoe_t fsm)

Returns, if the state machine terminated with success.

Returns
non-zero if successful.
Parameters
fsmFinite state machine

Definition at line 131 of file fsm_eoe.c.

◆ ec_fsm_eoe_prepare_set()

int ec_fsm_eoe_prepare_set ( ec_fsm_eoe_t fsm,
ec_datagram_t datagram 
)

Prepare a set IP parameters operation.

Returns
0 on success, otherwise a negative error code.
Parameters
fsmfinite state machine
datagramDatagram to use.

Definition at line 144 of file fsm_eoe.c.