master/master.c
changeset 138 7e743a61a991
parent 136 a03a684cac89
child 140 b09658e50d6f
equal deleted inserted replaced
137:3fb18812871a 138:7e743a61a991
   537    angegeben werden (mit entsprechendem Prefix).
   537    angegeben werden (mit entsprechendem Prefix).
   538 
   538 
   539    \return Zeiger auf Slave bei Erfolg, sonst NULL
   539    \return Zeiger auf Slave bei Erfolg, sonst NULL
   540 */
   540 */
   541 
   541 
   542 ec_slave_t *ec_master_slave_address(const ec_master_t *master,
   542 ec_slave_t *ecrt_master_get_slave(const ec_master_t *master, /**< Master */
   543                                     /**< EtherCAT-Master */
   543                                   const char *address /**< Address-String */
   544                                     const char *address
   544                                   )
   545                                     /**< Address-String */
       
   546                                     )
       
   547 {
   545 {
   548     unsigned long first, second;
   546     unsigned long first, second;
   549     char *remainder, *remainder2;
   547     char *remainder, *remainder2;
   550     unsigned int i, alias_requested, alias_slave_index, alias_found;
   548     unsigned int i, alias_requested, alias_slave_index, alias_found;
   551     int coupler_idx, slave_idx;
   549     int coupler_idx, slave_idx;
  1183     EC_INFO("*** End master information ***\n");
  1181     EC_INFO("*** End master information ***\n");
  1184 }
  1182 }
  1185 
  1183 
  1186 /*****************************************************************************/
  1184 /*****************************************************************************/
  1187 
  1185 
  1188 /**
       
  1189    Schreibt den "Configured station alias".
       
  1190 
       
  1191    \return 0, wenn alles ok, sonst < 0
       
  1192 */
       
  1193 
       
  1194 int ecrt_master_write_slave_alias(ec_master_t *master,
       
  1195                                   /** EtherCAT-Master */
       
  1196                                   const char *slave_address,
       
  1197                                   /** Slave-Adresse,
       
  1198                                       siehe ec_master_slave_address() */
       
  1199                                   uint16_t alias
       
  1200                                   /** Neuer Alias */
       
  1201                                   )
       
  1202 {
       
  1203     ec_slave_t *slave;
       
  1204     if (!(slave = ec_master_slave_address(master, slave_address)))
       
  1205         return -1;
       
  1206     return ec_slave_sii_write16(slave, 0x0004, alias);
       
  1207 }
       
  1208 
       
  1209 /*****************************************************************************/
       
  1210 
       
  1211 EXPORT_SYMBOL(ecrt_master_create_domain);
  1186 EXPORT_SYMBOL(ecrt_master_create_domain);
  1212 EXPORT_SYMBOL(ecrt_master_activate);
  1187 EXPORT_SYMBOL(ecrt_master_activate);
  1213 EXPORT_SYMBOL(ecrt_master_deactivate);
  1188 EXPORT_SYMBOL(ecrt_master_deactivate);
  1214 EXPORT_SYMBOL(ecrt_master_fetch_sdo_lists);
  1189 EXPORT_SYMBOL(ecrt_master_fetch_sdo_lists);
  1215 EXPORT_SYMBOL(ecrt_master_prepare_async_io);
  1190 EXPORT_SYMBOL(ecrt_master_prepare_async_io);
  1216 EXPORT_SYMBOL(ecrt_master_sync_io);
  1191 EXPORT_SYMBOL(ecrt_master_sync_io);
  1217 EXPORT_SYMBOL(ecrt_master_async_send);
  1192 EXPORT_SYMBOL(ecrt_master_async_send);
  1218 EXPORT_SYMBOL(ecrt_master_async_receive);
  1193 EXPORT_SYMBOL(ecrt_master_async_receive);
  1219 EXPORT_SYMBOL(ecrt_master_debug);
  1194 EXPORT_SYMBOL(ecrt_master_debug);
  1220 EXPORT_SYMBOL(ecrt_master_print);
  1195 EXPORT_SYMBOL(ecrt_master_print);
  1221 EXPORT_SYMBOL(ecrt_master_write_slave_alias);
  1196 EXPORT_SYMBOL(ecrt_master_get_slave);
  1222 
  1197 
  1223 /*****************************************************************************/
  1198 /*****************************************************************************/
  1224 
  1199 
  1225 /* Emacs-Konfiguration
  1200 /* Emacs-Konfiguration
  1226 ;;; Local Variables: ***
  1201 ;;; Local Variables: ***