master/fsm_coe.c
changeset 874 022f869ea40f
parent 860 ba5c38f0bb30
child 895 5c2125247dde
equal deleted inserted replaced
873:ec01ba291896 874:022f869ea40f
   943     ec_datagram_t *datagram = fsm->datagram;
   943     ec_datagram_t *datagram = fsm->datagram;
   944     ec_slave_t *slave = fsm->slave;
   944     ec_slave_t *slave = fsm->slave;
   945     ec_sdo_request_t *request = fsm->request;
   945     ec_sdo_request_t *request = fsm->request;
   946     uint8_t *data;
   946     uint8_t *data;
   947 
   947 
   948     if (fsm->slave->master->debug_level)
   948     if (fsm->slave->master->debug_level) {
   949         EC_DBG("Downloading Sdo 0x%04X:%i to slave %i.\n",
   949         EC_DBG("Downloading Sdo 0x%04X:%u to slave %u.\n",
   950                request->index, request->subindex, slave->ring_position);
   950                request->index, request->subindex, slave->ring_position);
       
   951         ec_print_data(request->data, request->data_size);
       
   952     }
   951 
   953 
   952     if (!(slave->sii.mailbox_protocols & EC_MBOX_COE)) {
   954     if (!(slave->sii.mailbox_protocols & EC_MBOX_COE)) {
   953         EC_ERR("Slave %u does not support CoE!\n", slave->ring_position);
   955         EC_ERR("Slave %u does not support CoE!\n", slave->ring_position);
   954         fsm->state = ec_fsm_coe_error;
   956         fsm->state = ec_fsm_coe_error;
   955         return;
   957         return;
  1164     ec_master_t *master = slave->master;
  1166     ec_master_t *master = slave->master;
  1165     ec_sdo_request_t *request = fsm->request;
  1167     ec_sdo_request_t *request = fsm->request;
  1166     uint8_t *data;
  1168     uint8_t *data;
  1167 
  1169 
  1168     if (master->debug_level)
  1170     if (master->debug_level)
  1169         EC_DBG("Uploading Sdo 0x%04X:%i from slave %i.\n",
  1171         EC_DBG("Uploading Sdo 0x%04X:%u from slave %u.\n",
  1170                request->index, request->subindex, slave->ring_position);
  1172                request->index, request->subindex, slave->ring_position);
  1171 
  1173 
  1172     if (!(slave->sii.mailbox_protocols & EC_MBOX_COE)) {
  1174     if (!(slave->sii.mailbox_protocols & EC_MBOX_COE)) {
  1173         EC_ERR("Slave %u does not support CoE!\n", slave->ring_position);
  1175         EC_ERR("Slave %u does not support CoE!\n", slave->ring_position);
  1174         fsm->state = ec_fsm_coe_error;
  1176         fsm->state = ec_fsm_coe_error;
  1467             fsm->state = ec_fsm_coe_up_seg_request;
  1469             fsm->state = ec_fsm_coe_up_seg_request;
  1468             return;
  1470             return;
  1469         }
  1471         }
  1470     }
  1472     }
  1471 
  1473 
       
  1474     if (master->debug_level) {
       
  1475         EC_DBG("Uploaded data:\n");
       
  1476         ec_print_data(request->data, request->data_size);
       
  1477     }
       
  1478 
  1472     fsm->state = ec_fsm_coe_end; // success
  1479     fsm->state = ec_fsm_coe_end; // success
  1473 }
  1480 }
  1474 
  1481 
  1475 /*****************************************************************************/
  1482 /*****************************************************************************/
  1476 
  1483 
  1674         fsm->retries = EC_FSM_RETRIES;
  1681         fsm->retries = EC_FSM_RETRIES;
  1675         fsm->state = ec_fsm_coe_up_seg_request;
  1682         fsm->state = ec_fsm_coe_up_seg_request;
  1676         return;
  1683         return;
  1677     }
  1684     }
  1678 
  1685 
       
  1686     if (master->debug_level) {
       
  1687         EC_DBG("Uploaded data:\n");
       
  1688         ec_print_data(request->data, request->data_size);
       
  1689     }
       
  1690 
  1679     fsm->state = ec_fsm_coe_end; // success
  1691     fsm->state = ec_fsm_coe_end; // success
  1680 }
  1692 }
  1681 
  1693 
  1682 /*****************************************************************************/
  1694 /*****************************************************************************/
  1683 
  1695