master/fsm_coe.h
changeset 854 f4f53be425ac
parent 847 92266462d411
child 859 233e32f428e1
equal deleted inserted replaced
853:726326d0aef4 854:f4f53be425ac
    58     ec_slave_t *slave; /**< slave the FSM runs on */
    58     ec_slave_t *slave; /**< slave the FSM runs on */
    59     ec_datagram_t *datagram; /**< datagram used in the state machine */
    59     ec_datagram_t *datagram; /**< datagram used in the state machine */
    60     unsigned int retries; /**< retries upon datagram timeout */
    60     unsigned int retries; /**< retries upon datagram timeout */
    61 
    61 
    62     void (*state)(ec_fsm_coe_t *); /**< CoE state function */
    62     void (*state)(ec_fsm_coe_t *); /**< CoE state function */
    63     ec_sdo_data_t *sdodata; /**< input/output: Sdo data object */
       
    64     cycles_t cycles_start; /**< CoE timestamp */
    63     cycles_t cycles_start; /**< CoE timestamp */
    65     ec_sdo_t *sdo; /**< current Sdo */
    64     ec_sdo_t *sdo; /**< current Sdo */
    66     uint8_t subindex; /**< current subindex */
    65     uint8_t subindex; /**< current subindex */
    67     ec_sdo_request_t *request; /**< Sdo request */
    66     ec_sdo_request_t *request; /**< Sdo request */
    68     uint8_t toggle; /**< toggle bit for segment commands */
    67     uint8_t toggle; /**< toggle bit for segment commands */
    72 
    71 
    73 void ec_fsm_coe_init(ec_fsm_coe_t *, ec_datagram_t *);
    72 void ec_fsm_coe_init(ec_fsm_coe_t *, ec_datagram_t *);
    74 void ec_fsm_coe_clear(ec_fsm_coe_t *);
    73 void ec_fsm_coe_clear(ec_fsm_coe_t *);
    75 
    74 
    76 void ec_fsm_coe_dictionary(ec_fsm_coe_t *, ec_slave_t *);
    75 void ec_fsm_coe_dictionary(ec_fsm_coe_t *, ec_slave_t *);
    77 void ec_fsm_coe_download(ec_fsm_coe_t *, ec_slave_t *, ec_sdo_data_t *);
    76 void ec_fsm_coe_download(ec_fsm_coe_t *, ec_slave_t *, ec_sdo_request_t *);
    78 void ec_fsm_coe_upload(ec_fsm_coe_t *, ec_slave_t *, ec_sdo_request_t *);
    77 void ec_fsm_coe_upload(ec_fsm_coe_t *, ec_slave_t *, ec_sdo_request_t *);
    79 
    78 
    80 int ec_fsm_coe_exec(ec_fsm_coe_t *);
    79 int ec_fsm_coe_exec(ec_fsm_coe_t *);
    81 int ec_fsm_coe_success(ec_fsm_coe_t *);
    80 int ec_fsm_coe_success(ec_fsm_coe_t *);
    82 
    81