Exemplo n.º 1
0
void era_motors_init(era_motors_p motors, can_device_p can_dev, 
  era_config_joint_p config) {
  if (!can_dev) {
    can_dev = malloc(sizeof(can_device_t));
    can_init(can_dev, 0);
  }

  epos_node_p node_a = (epos_node_p)motors;
  config_p config_a = (config_p)config;
  int i;
  for (i = 0; i < sizeof(era_motors_t)/sizeof(epos_node_t); ++i)
    epos_init(&node_a[i], can_dev, &config_a[i]);

  era_motors_home_init(motors);
}
Exemplo n.º 2
0
void epos_init_arg(epos_node_p node, int argc, char **argv, const char* 
  prefix) {
  can_device_p can_dev = malloc(sizeof(can_device_t));
  can_init_arg(can_dev, argc, argv, 0);

  config_t config;
  if (config_init_arg(&config, argc, argv, (prefix) ? prefix : 
      EPOS_CONFIG_ARG_PREFIX)) {
    config_print_help(stdout, &epos_default_config, EPOS_CONFIG_ARG_PREFIX);
    config_print_help(stdout, &can_default_config, CAN_CONFIG_ARG_PREFIX);
    exit(0);
  }
    
  epos_init(node, can_dev, &config);

  config_destroy(&config);
}