equal
deleted
inserted
replaced
42 #include "master.h" |
42 #include "master.h" |
43 #include "mailbox.h" |
43 #include "mailbox.h" |
44 #include "slave_config.h" |
44 #include "slave_config.h" |
45 #include "fsm_slave_config.h" |
45 #include "fsm_slave_config.h" |
46 |
46 |
|
47 /** Time in ms to wait for a response when downloading Sdo configurations. |
|
48 */ |
|
49 #define EC_FSM_SLAVE_CONF_SDO_CONF_TIMEOUT 3000 |
|
50 |
47 /*****************************************************************************/ |
51 /*****************************************************************************/ |
48 |
52 |
49 void ec_fsm_slave_config_state_start(ec_fsm_slave_config_t *); |
53 void ec_fsm_slave_config_state_start(ec_fsm_slave_config_t *); |
50 void ec_fsm_slave_config_state_init(ec_fsm_slave_config_t *); |
54 void ec_fsm_slave_config_state_init(ec_fsm_slave_config_t *); |
51 void ec_fsm_slave_config_state_clear_fmmus(ec_fsm_slave_config_t *); |
55 void ec_fsm_slave_config_state_clear_fmmus(ec_fsm_slave_config_t *); |
446 // start Sdo configuration |
450 // start Sdo configuration |
447 fsm->state = ec_fsm_slave_config_state_sdo_conf; |
451 fsm->state = ec_fsm_slave_config_state_sdo_conf; |
448 fsm->request = list_entry(fsm->slave->config->sdo_configs.next, |
452 fsm->request = list_entry(fsm->slave->config->sdo_configs.next, |
449 ec_sdo_request_t, list); |
453 ec_sdo_request_t, list); |
450 ecrt_sdo_request_write(fsm->request); |
454 ecrt_sdo_request_write(fsm->request); |
|
455 fsm->request->response_timeout = EC_FSM_SLAVE_CONF_SDO_CONF_TIMEOUT; |
451 ec_fsm_coe_transfer(&fsm->fsm_coe, fsm->slave, fsm->request); |
456 ec_fsm_coe_transfer(&fsm->fsm_coe, fsm->slave, fsm->request); |
452 ec_fsm_coe_exec(&fsm->fsm_coe); // execute immediately |
457 ec_fsm_coe_exec(&fsm->fsm_coe); // execute immediately |
453 } |
458 } |
454 |
459 |
455 /*****************************************************************************/ |
460 /*****************************************************************************/ |