00001 /* 00002 * Simple Open EtherCAT Master Library 00003 * 00004 * File : ethercatdc.h 00005 * Version : 1.2.5 00006 * Date : 09-04-2011 00007 * Copyright (C) 2005-2011 Speciaal Machinefabriek Ketels v.o.f. 00008 * Copyright (C) 2005-2011 Arthur Ketels 00009 * Copyright (C) 2008-2009 TU/e Technische Universiteit Eindhoven 00010 * 00011 * SOEM is free software; you can redistribute it and/or modify it under 00012 * the terms of the GNU General Public License version 2 as published by the Free 00013 * Software Foundation. 00014 * 00015 * SOEM is distributed in the hope that it will be useful, but WITHOUT ANY 00016 * WARRANTY; without even the implied warranty of MERCHANTABILITY or 00017 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00018 * for more details. 00019 * 00020 * As a special exception, if other files instantiate templates or use macros 00021 * or inline functions from this file, or you compile this file and link it 00022 * with other works to produce a work based on this file, this file does not 00023 * by itself cause the resulting work to be covered by the GNU General Public 00024 * License. However the source code for this file must still be made available 00025 * in accordance with section (3) of the GNU General Public License. 00026 * 00027 * This exception does not invalidate any other reasons why a work based on 00028 * this file might be covered by the GNU General Public License. 00029 * 00030 * The EtherCAT Technology, the trade name and logo “EtherCAT” are the intellectual 00031 * property of, and protected by Beckhoff Automation GmbH. You can use SOEM for 00032 * the sole purpose of creating, using and/or selling or otherwise distributing 00033 * an EtherCAT network master provided that an EtherCAT Master License is obtained 00034 * from Beckhoff Automation GmbH. 00035 * 00036 * In case you did not receive a copy of the EtherCAT Master License along with 00037 * SOEM write to Beckhoff Automation GmbH, Eiserstraße 5, D-33415 Verl, Germany 00038 * (www.beckhoff.com). 00039 */ 00040 00041 /** \file 00042 * \brief 00043 * Headerfile for ethercatdc.c 00044 */ 00045 00046 #ifndef _EC_ECATDC_H 00047 #define _EC_ECATDC_H 00048 00049 extern uint16 DCrefSlave; 00050 extern uint16 DClistN; 00051 00052 /** 00053 * Set DC's of all slaves to sync with the first, measure propagation delays. 00054 * 00055 * return DCfound 00056 */ 00057 boolean ec_configdc(); 00058 00059 void ec_dcsync0(uint16 slave, boolean act, uint32 CyclTime, uint32 CyclShift); 00060 void ec_dcsync01(uint16 slave, boolean act, uint32 CyclTime0, uint32 CyclTime1, uint32 CyclShift); 00061 00062 #endif /* _EC_ECATDC_H */