master/fsm_pdo.c
changeset 1193 e6d4134796c4
parent 1183 d77f634ab0b5
child 1318 76b4014391bd
equal deleted inserted replaced
1192:693ca2af5bec 1193:e6d4134796c4
    58 void ec_fsm_pdo_conf_state_read_mapping(ec_fsm_pdo_t *);
    58 void ec_fsm_pdo_conf_state_read_mapping(ec_fsm_pdo_t *);
    59 void ec_fsm_pdo_conf_state_mapping(ec_fsm_pdo_t *);
    59 void ec_fsm_pdo_conf_state_mapping(ec_fsm_pdo_t *);
    60 void ec_fsm_pdo_conf_state_zero_pdo_count(ec_fsm_pdo_t *);
    60 void ec_fsm_pdo_conf_state_zero_pdo_count(ec_fsm_pdo_t *);
    61 void ec_fsm_pdo_conf_state_assign_pdo(ec_fsm_pdo_t *);
    61 void ec_fsm_pdo_conf_state_assign_pdo(ec_fsm_pdo_t *);
    62 void ec_fsm_pdo_conf_state_set_pdo_count(ec_fsm_pdo_t *);
    62 void ec_fsm_pdo_conf_state_set_pdo_count(ec_fsm_pdo_t *);
    63 void ec_fsm_pdo_conf_state_entries(ec_fsm_pdo_t *);
       
    64 
    63 
    65 void ec_fsm_pdo_conf_action_next_sync(ec_fsm_pdo_t *);
    64 void ec_fsm_pdo_conf_action_next_sync(ec_fsm_pdo_t *);
    66 void ec_fsm_pdo_conf_action_pdo_mapping(ec_fsm_pdo_t *);
    65 void ec_fsm_pdo_conf_action_pdo_mapping(ec_fsm_pdo_t *);
    67 void ec_fsm_pdo_conf_action_check_mapping(ec_fsm_pdo_t *);
    66 void ec_fsm_pdo_conf_action_check_mapping(ec_fsm_pdo_t *);
    68 void ec_fsm_pdo_conf_action_next_pdo_mapping(ec_fsm_pdo_t *);
    67 void ec_fsm_pdo_conf_action_next_pdo_mapping(ec_fsm_pdo_t *);
   431     fsm->state = ec_fsm_pdo_state_end;
   430     fsm->state = ec_fsm_pdo_state_end;
   432 }
   431 }
   433 
   432 
   434 /*****************************************************************************/
   433 /*****************************************************************************/
   435 
   434 
   436 /**
   435 /** Check if the mapping has to be read, otherwise start to configure it.
   437  */
   436  */
   438 void ec_fsm_pdo_conf_action_pdo_mapping(
   437 void ec_fsm_pdo_conf_action_pdo_mapping(
   439         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   438         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   440         )
   439         )
   441 {
   440 {
   467     ec_fsm_pdo_conf_action_check_mapping(fsm);
   466     ec_fsm_pdo_conf_action_check_mapping(fsm);
   468 }
   467 }
   469 
   468 
   470 /*****************************************************************************/
   469 /*****************************************************************************/
   471 
   470 
   472 /**
   471 /** Execute the Pdo entry state machine to read the current Pdo's mapping.
   473  */
   472  */
   474 void ec_fsm_pdo_conf_state_read_mapping(
   473 void ec_fsm_pdo_conf_state_read_mapping(
   475         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   474         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   476         )
   475         )
   477 {
   476 {
   486     ec_fsm_pdo_conf_action_check_mapping(fsm);
   485     ec_fsm_pdo_conf_action_check_mapping(fsm);
   487 }
   486 }
   488 
   487 
   489 /*****************************************************************************/
   488 /*****************************************************************************/
   490 
   489 
   491 /**
   490 /** Check if the mapping has to be re-configured.
       
   491  *
       
   492  * \todo Display mapping differences.
   492  */
   493  */
   493 void ec_fsm_pdo_conf_action_check_mapping(
   494 void ec_fsm_pdo_conf_action_check_mapping(
   494         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   495         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   495         )
   496         )
   496 {
   497 {
   513     fsm->state(fsm); // execure immediately
   514     fsm->state(fsm); // execure immediately
   514 }
   515 }
   515 
   516 
   516 /*****************************************************************************/
   517 /*****************************************************************************/
   517 
   518 
   518 /**
   519 /** Let the Pdo entry state machine configure the current Pdo's mapping.
   519  */
   520  */
   520 void ec_fsm_pdo_conf_state_mapping(
   521 void ec_fsm_pdo_conf_state_mapping(
   521         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   522         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   522         )
   523         )
   523 {
   524 {
   531     ec_fsm_pdo_conf_action_next_pdo_mapping(fsm);
   532     ec_fsm_pdo_conf_action_next_pdo_mapping(fsm);
   532 }
   533 }
   533 
   534 
   534 /*****************************************************************************/
   535 /*****************************************************************************/
   535 
   536 
   536 /**
   537 /** Check mapping of next Pdo, otherwise configure assignment.
   537  */
   538  */
   538 void ec_fsm_pdo_conf_action_next_pdo_mapping(
   539 void ec_fsm_pdo_conf_action_next_pdo_mapping(
   539         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   540         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   540         )
   541         )
   541 {
   542 {
   549     ec_fsm_pdo_conf_action_pdo_mapping(fsm);
   550     ec_fsm_pdo_conf_action_pdo_mapping(fsm);
   550 }
   551 }
   551 
   552 
   552 /*****************************************************************************/
   553 /*****************************************************************************/
   553 
   554 
   554 /**
   555 /** Check if the Pdo assignment of the current SM has to be re-configured.
   555  */
   556  */
   556 void ec_fsm_pdo_conf_action_check_assignment(
   557 void ec_fsm_pdo_conf_action_check_assignment(
   557         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   558         ec_fsm_pdo_t *fsm /**< Pdo configuration state machine. */
   558         )
   559         )
   559 {
   560 {