IgH EtherCAT Master  1.5.2
fsm_slave_config.h File Reference

EtherCAT slave configuration state machine. More...

Go to the source code of this file.

Data Structures

struct  ec_fsm_slave_config
 Finite state machine to configure an EtherCAT slave. More...
 

Typedefs

typedef struct ec_fsm_slave_config ec_fsm_slave_config_t
 

Functions

void ec_fsm_slave_config_init (ec_fsm_slave_config_t *, ec_datagram_t *, ec_fsm_change_t *, ec_fsm_coe_t *, ec_fsm_soe_t *, ec_fsm_pdo_t *)
 Constructor.
 
void ec_fsm_slave_config_clear (ec_fsm_slave_config_t *)
 Destructor.
 
void ec_fsm_slave_config_start (ec_fsm_slave_config_t *, ec_slave_t *)
 Start slave configuration state machine.
 
int ec_fsm_slave_config_exec (ec_fsm_slave_config_t *)
 Executes the current state of the state machine.
 
int ec_fsm_slave_config_success (const ec_fsm_slave_config_t *)
 

Detailed Description

EtherCAT slave configuration state machine.

Definition in file fsm_slave_config.h.

Typedef Documentation

◆ ec_fsm_slave_config_t

See also
ec_fsm_slave_config

Definition at line 50 of file fsm_slave_config.h.

Function Documentation

◆ ec_fsm_slave_config_init()

void ec_fsm_slave_config_init ( ec_fsm_slave_config_t fsm,
ec_datagram_t datagram,
ec_fsm_change_t fsm_change,
ec_fsm_coe_t fsm_coe,
ec_fsm_soe_t fsm_soe,
ec_fsm_pdo_t fsm_pdo 
)

Constructor.

Parameters
fsmslave state machine
datagramdatagram structure to use
fsm_changeState change state machine to use.
fsm_coeCoE state machine to use.
fsm_soeSoE state machine to use.
fsm_pdoPDO configuration state machine to use.

Definition at line 121 of file fsm_slave_config.c.

◆ ec_fsm_slave_config_clear()

void ec_fsm_slave_config_clear ( ec_fsm_slave_config_t fsm)

Destructor.

Parameters
fsmslave state machine

Definition at line 144 of file fsm_slave_config.c.

◆ ec_fsm_slave_config_start()

void ec_fsm_slave_config_start ( ec_fsm_slave_config_t fsm,
ec_slave_t slave 
)

Start slave configuration state machine.

Parameters
fsmslave state machine
slaveslave to configure

Definition at line 156 of file fsm_slave_config.c.

◆ ec_fsm_slave_config_exec()

int ec_fsm_slave_config_exec ( ec_fsm_slave_config_t fsm)

Executes the current state of the state machine.

If the state machine's datagram is not sent or received yet, the execution of the state machine is delayed to the next cycle.

Returns
false, if state machine has terminated
Parameters
fsmslave state machine

Definition at line 187 of file fsm_slave_config.c.

◆ ec_fsm_slave_config_success()

int ec_fsm_slave_config_success ( const ec_fsm_slave_config_t fsm)
Returns
true, if the state machine terminated gracefully
Parameters
fsmslave state machine

Definition at line 206 of file fsm_slave_config.c.