37#ifndef __EC_FSM_SLAVE_SCAN_H__
38#define __EC_FSM_SLAVE_SCAN_H__
EtherCAT datagram structure.
EtherCAT state change FSM.
EtherCAT CoE state machines.
EtherCAT PDO configuration state machine structures.
EtherCAT slave information interface FSM structure.
void ec_fsm_slave_scan_init(ec_fsm_slave_scan_t *, ec_datagram_t *, ec_fsm_slave_config_t *, ec_fsm_pdo_t *)
Constructor.
int ec_fsm_slave_scan_success(const ec_fsm_slave_scan_t *)
void ec_fsm_slave_scan_clear(ec_fsm_slave_scan_t *)
Destructor.
void ec_fsm_slave_scan_start(ec_fsm_slave_scan_t *, ec_slave_t *)
Start slave scan state machine.
int ec_fsm_slave_scan_exec(ec_fsm_slave_scan_t *)
Executes the current state of the state machine.
Global definitions and macros.
EtherCAT slave structure.
PDO configuration state machine.
Slave information interface FSM.
Finite state machine to configure an EtherCAT slave.
Finite state machine for scanning an EtherCAT slave.
unsigned int retries
Retries on datagram timeout.
ec_fsm_slave_config_t * fsm_slave_config
Slave configuration state machine to use.
ec_slave_t * slave
Slave the FSM runs on.
void(* state)(ec_fsm_slave_scan_t *)
State function.
ec_fsm_sii_t fsm_sii
SII state machine.
uint16_t sii_offset
SII offset in words.
ec_datagram_t * datagram
Datagram used in the state machine.
ec_fsm_pdo_t * fsm_pdo
PDO configuration state machine to use.