67 void (*master_state)(ec_fsm_t *); /**< master state function */ |
68 void (*master_state)(ec_fsm_t *); /**< master state function */ |
68 unsigned int master_slaves_responding; /**< number of responding slaves */ |
69 unsigned int master_slaves_responding; /**< number of responding slaves */ |
69 ec_slave_state_t master_slave_states; /**< states of responding slaves */ |
70 ec_slave_state_t master_slave_states; /**< states of responding slaves */ |
70 unsigned int master_validation; /**< non-zero, if validation to do */ |
71 unsigned int master_validation; /**< non-zero, if validation to do */ |
71 uint16_t sii_offset; /**< current offset for SII access */ |
72 uint16_t sii_offset; /**< current offset for SII access */ |
|
73 ec_sdo_request_t *sdo_request; |
72 |
74 |
73 void (*slave_state)(ec_fsm_t *); /**< slave state function */ |
75 void (*slave_state)(ec_fsm_t *); /**< slave state function */ |
|
76 ec_sdo_data_t *sdodata; /**< SDO configuration data */ |
74 |
77 |
75 ec_fsm_sii_t fsm_sii; /**< SII state machine */ |
78 ec_fsm_sii_t fsm_sii; /**< SII state machine */ |
76 ec_fsm_change_t fsm_change; /**< State change state machine */ |
79 ec_fsm_change_t fsm_change; /**< State change state machine */ |
77 |
80 ec_fsm_coe_t fsm_coe; /**< CoE state machine */ |
78 void (*coe_state)(ec_fsm_t *); /**< CoE state function */ |
|
79 ec_sdo_data_t *coe_sdodata; /**< input/output: SDO data object */ |
|
80 cycles_t coe_start; /**< CoE timestamp */ |
|
81 ec_sdo_t *coe_sdo; /**< current SDO */ |
|
82 uint8_t coe_subindex; /**< current subindex */ |
|
83 ec_sdo_request_t *coe_request; /**< SDO request */ |
|
84 uint8_t coe_toggle; /**< toggle bit for segment commands */ |
|
85 }; |
81 }; |
86 |
82 |
87 /*****************************************************************************/ |
83 /*****************************************************************************/ |
88 |
84 |
89 int ec_fsm_init(ec_fsm_t *, ec_master_t *); |
85 int ec_fsm_init(ec_fsm_t *, ec_master_t *); |