master/types.c
author Florian Pose <fp@igh-essen.com>
Wed, 19 Jul 2006 16:36:36 +0000
changeset 310 b7e7709fd40e
parent 290 57a4201cbb0f
permissions -rw-r--r--
Better slave scan sub state machine.
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
     1
/******************************************************************************
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     2
 *
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
     3
 *  $Id$
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
     4
 *
197
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
     5
 *  Copyright (C) 2006  Florian Pose, Ingenieurgemeinschaft IgH
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
     6
 *
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
     7
 *  This file is part of the IgH EtherCAT Master.
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
     8
 *
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
     9
 *  The IgH EtherCAT Master is free software; you can redistribute it
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    10
 *  and/or modify it under the terms of the GNU General Public License
246
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    11
 *  as published by the Free Software Foundation; either version 2 of the
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    12
 *  License, or (at your option) any later version.
197
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    13
 *
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    14
 *  The IgH EtherCAT Master is distributed in the hope that it will be
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    15
 *  useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    16
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    17
 *  GNU General Public License for more details.
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    18
 *
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    19
 *  You should have received a copy of the GNU General Public License
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    20
 *  along with the IgH EtherCAT Master; if not, write to the Free Software
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    21
 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
b9a6e2c22745 GPLv2 License and enhanced Doxygen output.
Florian Pose <fp@igh-essen.com>
parents: 195
diff changeset
    22
 *
246
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    23
 *  The right to use EtherCAT Technology is granted and comes free of
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    24
 *  charge under condition of compatibility of product made by
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    25
 *  Licensee. People intending to distribute/sell products based on the
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    26
 *  code, have to sign an agreement to guarantee that products using
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    27
 *  software based on IgH EtherCAT master stay compatible with the actual
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    28
 *  EtherCAT specification (which are released themselves as an open
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    29
 *  standard) as the (only) precondition to have the right to use EtherCAT
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    30
 *  Technology, IP and trade marks.
0bf7c769de06 Changed license headers and added EtherCAT license notice.
Florian Pose <fp@igh-essen.com>
parents: 199
diff changeset
    31
 *
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
    32
 *****************************************************************************/
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    33
199
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    34
/**
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    35
   \file
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    36
   EtherCAT slave descriptions.
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    37
   \cond
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    38
*/
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    39
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    40
/*****************************************************************************/
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
    41
24
d417dd9bdc2f Wilhelms ?nderungen ?bernommen.
Florian Pose <fp@igh-essen.com>
parents: 23
diff changeset
    42
#include <linux/module.h>
d417dd9bdc2f Wilhelms ?nderungen ?bernommen.
Florian Pose <fp@igh-essen.com>
parents: 23
diff changeset
    43
54
7506e67dd122 Vereinheitlichte Schnittstellen, Include-Verzeichnis und Module getrennt.
Florian Pose <fp@igh-essen.com>
parents: 39
diff changeset
    44
#include "globals.h"
7506e67dd122 Vereinheitlichte Schnittstellen, Include-Verzeichnis und Module getrennt.
Florian Pose <fp@igh-essen.com>
parents: 39
diff changeset
    45
#include "types.h"
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    46
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
    47
/*****************************************************************************/
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
    48
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    49
const ec_sync_t mailbox_sm0 = {0x1800, 246, 0x26, {NULL}};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    50
const ec_sync_t mailbox_sm1 = {0x18F6, 246, 0x22, {NULL}};
67
56964b20c15d EL5101-Inkrementalgeberklemme hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 66
diff changeset
    51
195
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
    52
/******************************************************************************
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
    53
 *  slave objects
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
    54
 *****************************************************************************/
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    55
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    56
const ec_slave_type_t Beckhoff_EK1100 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
    57
    "Beckhoff", "EK1100", "Bus Coupler", EC_TYPE_BUS_COUPLER,
195
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
    58
    {NULL} // no sync managers
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
    59
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
    60
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    61
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    62
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    63
const ec_slave_type_t Beckhoff_EK1110 = {
290
57a4201cbb0f Introducing infrastructural slaves that do not contain process data.
Florian Pose <fp@igh-essen.com>
parents: 280
diff changeset
    64
    "Beckhoff", "EK1110", "Extension terminal", EC_TYPE_INFRA,
195
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
    65
    {NULL} // no sync managers
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
    66
};
55
059a9e712aa7 Mit neuer Schnittstelle wieder lauff?hig.
Florian Pose <fp@igh-essen.com>
parents: 54
diff changeset
    67
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    68
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
    69
280
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    70
const ec_field_t bk1120_out = {"Outputs", 0}; // variable size
275
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    71
const ec_field_t bk1120_in = {"Inputs", 0}; // variable size
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    72
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    73
const ec_sync_t bk1120_sm0 = {0x1C00, 264, 0x26, {NULL}};
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    74
const ec_sync_t bk1120_sm1 = {0x1E00, 264, 0x22, {NULL}};
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    75
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    76
const ec_sync_t bk1120_sm2 = { // outputs
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    77
    0x1000, 0, 0x24, // variable size
280
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    78
    {&bk1120_out, NULL}
275
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    79
};
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    80
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    81
const ec_sync_t bk1120_sm3 = { // inputs
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    82
    0x1600, 0, 0x00, // variable size
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    83
    {&bk1120_in, NULL}
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    84
};
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    85
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
    86
const ec_slave_type_t Beckhoff_BK1120 = {
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
    87
    "Beckhoff", "BK1120", "KBUS Coupler", EC_TYPE_NORMAL,
275
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
    88
    {&bk1120_sm0, &bk1120_sm1, &bk1120_sm2, &bk1120_sm3, NULL}
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
    89
};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
    90
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
    91
/*****************************************************************************/
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
    92
280
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    93
const ec_field_t el1004_in = {"InputValue", 1};
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    94
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    95
const ec_sync_t el1004_sm0 = { // inputs
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    96
    0x1000, 1, 0x00,
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    97
    {&el1004_in, NULL}
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    98
};
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
    99
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   100
const ec_slave_type_t Beckhoff_EL1004 = {
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   101
    "Beckhoff", "EL1004", "4x Digital Input, 3ms", EC_TYPE_NORMAL,
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   102
    {&el1004_sm0, NULL}
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   103
};
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   104
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   105
/*****************************************************************************/
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   106
104
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   107
const ec_field_t el1014_in = {"InputValue", 1};
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   108
195
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
   109
const ec_sync_t el1014_sm0 = { // inputs
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   110
    0x1000, 1, 0x00,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   111
    {&el1014_in, NULL}
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   112
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   113
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   114
const ec_slave_type_t Beckhoff_EL1014 = {
280
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   115
    "Beckhoff", "EL1014", "4x Digital Input, 10us", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   116
    {&el1014_sm0, NULL}
72
7c986b717411 Klemme Beckhoff EL2032 hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 67
diff changeset
   117
};
7c986b717411 Klemme Beckhoff EL2032 hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 67
diff changeset
   118
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   119
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   120
104
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   121
const ec_field_t el20XX_out = {"OutputValue", 1};
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   122
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   123
const ec_sync_t el20XX_sm0 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   124
    0x0F00, 1, 0x46,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   125
    {&el20XX_out, NULL}
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   126
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   127
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   128
const ec_slave_type_t Beckhoff_EL2004 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   129
    "Beckhoff", "EL2004", "4x Digital Output", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   130
    {&el20XX_sm0, NULL}
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   131
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   132
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   133
const ec_slave_type_t Beckhoff_EL2032 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   134
    "Beckhoff", "EL2032", "2x Digital Output (2A)", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   135
    {&el20XX_sm0, NULL}
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   136
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   137
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   138
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   139
104
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   140
const ec_field_t el31X2_st1 = {"Status",     1};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   141
const ec_field_t el31X2_ip1 = {"InputValue", 2};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   142
const ec_field_t el31X2_st2 = {"Status",     1};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   143
const ec_field_t el31X2_ip2 = {"InputValue", 2};
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   144
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   145
const ec_sync_t el31X2_sm2 = {0x1000, 4, 0x24, {NULL}};
35
ed834aa98f89 Klemme Beckhoff EL4132 hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 24
diff changeset
   146
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   147
const ec_sync_t el31X2_sm3 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   148
    0x1100, 6, 0x20,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   149
    {&el31X2_st1, &el31X2_ip1, &el31X2_st2, &el31X2_ip2, NULL}
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   150
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   151
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   152
const ec_slave_type_t Beckhoff_EL3102 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   153
    "Beckhoff", "EL3102", "2x Analog Input diff.", EC_TYPE_NORMAL,
76
9dc136e3801c EL31XX-Typ korrigiert.
Florian Pose <fp@igh-essen.com>
parents: 75
diff changeset
   154
    {&mailbox_sm0, &mailbox_sm1, &el31X2_sm2, &el31X2_sm3, NULL}
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   155
};
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   156
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   157
const ec_slave_type_t Beckhoff_EL3162 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   158
    "Beckhoff", "EL3162", "2x Analog Input", EC_TYPE_NORMAL,
76
9dc136e3801c EL31XX-Typ korrigiert.
Florian Pose <fp@igh-essen.com>
parents: 75
diff changeset
   159
    {&mailbox_sm0, &mailbox_sm1, &el31X2_sm2, &el31X2_sm3, NULL}
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   160
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   161
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   162
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   163
104
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   164
const ec_field_t el41X2_op = {"OutputValue", 2};
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   165
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   166
const ec_sync_t el41X2_sm2 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   167
    0x1000, 4, 0x24,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   168
    {&el41X2_op, &el41X2_op, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   169
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   170
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   171
const ec_slave_type_t Beckhoff_EL4102 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   172
    "Beckhoff", "EL4102", "2x Analog Output", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   173
    {&mailbox_sm0, &mailbox_sm1, &el41X2_sm2, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   174
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   175
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   176
const ec_slave_type_t Beckhoff_EL4132 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   177
    "Beckhoff", "EL4132", "2x Analog Output diff.", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   178
    {&mailbox_sm0, &mailbox_sm1, &el41X2_sm2, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   179
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   180
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   181
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   182
104
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   183
const ec_field_t el5001_st = {"Status",     1};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   184
const ec_field_t el5001_ip = {"InputValue", 4};
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   185
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   186
const ec_sync_t el5001_sm2 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   187
    0x1000, 4, 0x24,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   188
    {NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   189
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   190
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   191
const ec_sync_t el5001_sm3 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   192
    0x1100, 5, 0x20,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   193
    {&el5001_st, &el5001_ip, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   194
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   195
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   196
const ec_slave_type_t Beckhoff_EL5001 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   197
    "Beckhoff", "EL5001", "SSI-Interface", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   198
    {&mailbox_sm0, &mailbox_sm1, &el5001_sm2, &el5001_sm3, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   199
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   200
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   201
/*****************************************************************************/
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   202
104
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   203
const ec_field_t el5101_ct = {"Control",     1};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   204
const ec_field_t el5101_op = {"OutputValue", 2};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   205
const ec_field_t el5101_st = {"Status",      1};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   206
const ec_field_t el5101_ip = {"InputValue",  2};
052bc82d5442 MERGE branches/async -> trunk (alle Unterschiede ?bernommen)
Florian Pose <fp@igh-essen.com>
parents: 82
diff changeset
   207
const ec_field_t el5101_la = {"LatchValue",  2};
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   208
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   209
const ec_sync_t el5101_sm2 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   210
    0x1000, 3, 0x24,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   211
    {&el5101_ct, &el5101_op, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   212
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   213
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   214
const ec_sync_t el5101_sm3 = {
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   215
    0x1100, 5, 0x20,
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   216
    {&el5101_st, &el5101_ip, &el5101_la, NULL}
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   217
};
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   218
275
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
   219
const ec_slave_type_t Beckhoff_EL5101 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   220
    "Beckhoff", "EL5101", "Incremental Encoder Interface", EC_TYPE_NORMAL,
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   221
    {&mailbox_sm0, &mailbox_sm1, &el5101_sm2, &el5101_sm3, NULL}
67
56964b20c15d EL5101-Inkrementalgeberklemme hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 66
diff changeset
   222
};
56964b20c15d EL5101-Inkrementalgeberklemme hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 66
diff changeset
   223
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
   224
/*****************************************************************************/
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   225
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   226
const ec_sync_t el6601_sm0 = {0x1800, 522, 0x26, {NULL}};
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   227
const ec_sync_t el6601_sm1 = {0x1C00, 522, 0x22, {NULL}};
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   228
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   229
const ec_slave_type_t Beckhoff_EL6601 = {
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   230
    "Beckhoff", "EL6601", "1-Port Ethernet Switch Terminal", EC_TYPE_EOE,
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   231
    {&el6601_sm0, &el6601_sm1, NULL, NULL, NULL}
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   232
};
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   233
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   234
/*****************************************************************************/
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   235
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   236
const ec_field_t trlinenc2_st = {"Status",     1};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   237
const ec_field_t trlinenc2_ip = {"InputValue", 4};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   238
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   239
const ec_sync_t trlinenc2_sm0 = {0x1800, 192, 0x26, {NULL}};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   240
const ec_sync_t trlinenc2_sm1 = {0x1C00, 192, 0x22, {NULL}};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   241
const ec_sync_t trlinenc2_sm2 = {0x1000,   4, 0x24, {NULL}};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   242
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   243
const ec_sync_t trlinenc2_sm3 = {
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   244
    0x1100, 5, 0x20,
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   245
    {&trlinenc2_st, &trlinenc2_ip, NULL}
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   246
};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   247
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   248
const ec_slave_type_t TR_Electronic_LinEnc2 = {
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   249
    "TR-Electronic", "LinEnc2", "SSI-Encoder", EC_TYPE_NORMAL,
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   250
    {&trlinenc2_sm0, &trlinenc2_sm1, &trlinenc2_sm2, &trlinenc2_sm3, NULL}
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   251
};
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   252
199
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
   253
/** \endcond */
04ecf40fc2e9 Doxygen added interface modules and file documentation.
Florian Pose <fp@igh-essen.com>
parents: 197
diff changeset
   254
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   255
/*****************************************************************************/
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   256
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
   257
/**
195
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
   258
   Mapping between vendor IDs and product codes <=> slave objects.
39
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
   259
*/
6965c23a6826 likely/unlikely, Fehlermeldungen in zyklischem Code begrenzt und Kommentare ge??ndert.
Florian Pose <fp@igh-essen.com>
parents: 35
diff changeset
   260
195
674071846ee3 Translated all comments and documentation to english language.
Florian Pose <fp@igh-essen.com>
parents: 153
diff changeset
   261
ec_slave_ident_t slave_idents[] = {
280
35c99cdda518 types.c: BK1120 outputs and EL1004.
Florian Pose <fp@igh-essen.com>
parents: 275
diff changeset
   262
    {0x00000002, 0x03EC3052, &Beckhoff_EL1004},
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   263
    {0x00000002, 0x03F63052, &Beckhoff_EL1014},
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   264
    {0x00000002, 0x044C2C52, &Beckhoff_EK1100},
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   265
    {0x00000002, 0x04562C52, &Beckhoff_EK1110},
275
ba51285d4ef6 Variable-sized data fields, BK1120.
Florian Pose <fp@igh-essen.com>
parents: 246
diff changeset
   266
    {0x00000002, 0x04602C22, &Beckhoff_BK1120},
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   267
    {0x00000002, 0x07D43052, &Beckhoff_EL2004},
72
7c986b717411 Klemme Beckhoff EL2032 hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 67
diff changeset
   268
    {0x00000002, 0x07F03052, &Beckhoff_EL2032},
63
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   269
    {0x00000002, 0x0C1E3052, &Beckhoff_EL3102},
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   270
    {0x00000002, 0x0C5A3052, &Beckhoff_EL3162},
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   271
    {0x00000002, 0x10063052, &Beckhoff_EL4102},
0333d8ebfff5 Unbekannte Klemmen erlaubt, EL5001 integriert.
Florian Pose <fp@igh-essen.com>
parents: 55
diff changeset
   272
    {0x00000002, 0x10243052, &Beckhoff_EL4132},
67
56964b20c15d EL5101-Inkrementalgeberklemme hinzugef?gt.
Florian Pose <fp@igh-essen.com>
parents: 66
diff changeset
   273
    {0x00000002, 0x13893052, &Beckhoff_EL5001},
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   274
    {0x00000002, 0x13ED3052, &Beckhoff_EL5101},
145
11a82e4fd31b Mailbox-Interface ausgelagert, erster EOE-Ansatz.
Florian Pose <fp@igh-essen.com>
parents: 107
diff changeset
   275
    {0x00000002, 0x19C93052, &Beckhoff_EL6601},
153
32446a24c322 Plugfest: Neue Slave-Typen.
Florian Pose <fp@igh-essen.com>
parents: 145
diff changeset
   276
    {0x000000D4, 0x00000017, &TR_Electronic_LinEnc2},
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   277
    {}
0
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   278
};
05c992bf5847 trunk, tags und branches
Florian Pose <fp@igh-essen.com>
parents:
diff changeset
   279
73
9f4ea66d89a3 Dynamische FMMU-Konfiguration, zwei Kopieroperationen eingespart, Einr?ckungen angepasst.
Florian Pose <fp@igh-essen.com>
parents: 72
diff changeset
   280
/*****************************************************************************/