ethercatmain.h
Go to the documentation of this file.
1 /*
2  * Licensed under the GNU General Public License version 2 with exceptions. See
3  * LICENSE file in the project root for full license information
4  */
5 
11 #ifndef _ethercatmain_
12 #define _ethercatmain_
13 
14 
15 #ifdef __cplusplus
16 extern "C"
17 {
18 #endif
19 
21 #define EC_MAXELIST 64
22 
23 #define EC_MAXNAME 40
24 
25 #define EC_MAXSLAVE 200
26 
27 #define EC_MAXGROUP 2
28 
29 #define EC_MAXIOSEGMENTS 64
30 
31 #define EC_MAXMBX 1486
32 
33 #define EC_MAXEEPDO 0x200
34 
35 #define EC_MAXSM 8
36 
37 #define EC_MAXFMMU 4
38 
39 #define EC_MAXLEN_ADAPTERNAME 128
40 
41 #define EC_MAX_MAPT 1
42 
43 typedef struct ec_adapter ec_adaptert;
44 struct ec_adapter
45 {
49 };
50 
53 typedef struct PACKED ec_fmmu
54 {
65 } ec_fmmut;
67 
70 typedef struct PACKED ec_sm
71 {
75 } ec_smt;
77 
79 typedef struct PACKED ec_state_status
80 {
86 
87 #define ECT_MBXPROT_AOE 0x0001
88 #define ECT_MBXPROT_EOE 0x0002
89 #define ECT_MBXPROT_COE 0x0004
90 #define ECT_MBXPROT_FOE 0x0008
91 #define ECT_MBXPROT_SOE 0x0010
92 #define ECT_MBXPROT_VOE 0x0020
93 
94 #define ECT_COEDET_SDO 0x01
95 #define ECT_COEDET_SDOINFO 0x02
96 #define ECT_COEDET_PDOASSIGN 0x04
97 #define ECT_COEDET_PDOCONFIG 0x08
98 #define ECT_COEDET_UPLOAD 0x10
99 #define ECT_COEDET_SDOCA 0x20
100 
101 #define EC_SMENABLEMASK 0xfffeffff
102 
103 typedef struct ecx_context ecx_contextt;
104 
106 typedef struct ec_slave
107 {
145  uint8 SMtype[EC_MAXSM];
169  boolean hasdc;
229  boolean islost;
231  int (*PO2SOconfig)(uint16 slave);
233  int (*PO2SOconfigx)(ecx_contextt * context, uint16 slave);
235  char name[EC_MAXNAME + 1];
236 } ec_slavet;
237 
239 typedef struct ec_group
240 {
252  boolean hasdc;
270  boolean docheckstate;
273 } ec_groupt;
274 
276 typedef struct ec_eepromFMMU
277 {
285 
287 typedef struct ec_eepromSM
288 {
294  uint8 Sreg; /* don't care */
296  uint8 PDIctrl; /* don't care */
297 } ec_eepromSMt;
298 
300 typedef struct ec_eepromPDO
301 {
307  uint16 BitSize[EC_MAXEEPDO];
308  uint16 SMbitsize[EC_MAXSM];
309 } ec_eepromPDOt;
310 
313 
316 typedef struct PACKED ec_mbxheader
317 {
322 } ec_mbxheadert;
324 
327 typedef struct PACKED ec_alstatus
328 {
332 } ec_alstatust;
334 
336 typedef struct ec_idxstack
337 {
341  void *data[EC_MAXBUF];
342  uint16 length[EC_MAXBUF];
343 } ec_idxstackT;
344 
346 typedef struct ec_ering
347 {
350  ec_errort Error[EC_MAXELIST + 1];
351 } ec_eringt;
352 
355 typedef struct PACKED ec_SMcommtype
356 {
359  uint8 SMtype[EC_MAXSM];
362 
365 typedef struct PACKED ec_PDOassign
366 {
369  uint16 index[256];
370 } ec_PDOassignt;
372 
375 typedef struct PACKED ec_PDOdesc
376 {
379  uint32 PDO[256];
380 } ec_PDOdesct;
382 
385 {
393  int maxslave;
397  int maxgroup;
409  boolean *ecaterror;
427  int (*FOEhook)(uint16 slave, int packetnumber, int datasize);
429  int (*EOEhook)(ecx_contextt * context, uint16 slave, void * eoembx);
432 };
433 
434 #ifdef EC_VER1
435 
440 extern int ec_slavecount;
443 extern boolean EcatError;
444 extern int64 ec_DCtime;
445 
446 void ec_pusherror(const ec_errort *Ec);
447 boolean ec_poperror(ec_errort *Ec);
448 boolean ec_iserror(void);
449 void ec_packeterror(uint16 Slave, uint16 Index, uint8 SubIdx, uint16 ErrorCode);
450 int ec_init(const char * ifname);
451 int ec_init_redundant(const char *ifname, char *if2name);
452 void ec_close(void);
455 void ec_siistring(char *str, uint16 slave, uint16 Sn);
460 int ec_readstate(void);
462 uint16 ec_statecheck(uint16 slave, uint16 reqstate, int timeout);
463 int ec_mbxempty(uint16 slave, int timeout);
464 int ec_mbxsend(uint16 slave,ec_mbxbuft *mbx, int timeout);
465 int ec_mbxreceive(uint16 slave, ec_mbxbuft *mbx, int timeout);
467 uint32 ec_readeeprom(uint16 slave, uint16 eeproma, int timeout);
468 int ec_writeeeprom(uint16 slave, uint16 eeproma, uint16 data, int timeout);
471 uint64 ec_readeepromAP(uint16 aiadr, uint16 eeproma, int timeout);
472 int ec_writeeepromAP(uint16 aiadr, uint16 eeproma, uint16 data, int timeout);
473 uint64 ec_readeepromFP(uint16 configadr, uint16 eeproma, int timeout);
474 int ec_writeeepromFP(uint16 configadr, uint16 eeproma, uint16 data, int timeout);
475 void ec_readeeprom1(uint16 slave, uint16 eeproma);
476 uint32 ec_readeeprom2(uint16 slave, int timeout);
479 int ec_receive_processdata_group(uint8 group, int timeout);
480 int ec_send_processdata(void);
482 int ec_receive_processdata(int timeout);
483 #endif
484 
486 void ec_free_adapters(ec_adaptert * adapter);
488 void ec_clearmbx(ec_mbxbuft *Mbx);
489 void ecx_pusherror(ecx_contextt *context, const ec_errort *Ec);
490 boolean ecx_poperror(ecx_contextt *context, ec_errort *Ec);
491 boolean ecx_iserror(ecx_contextt *context);
492 void ecx_packeterror(ecx_contextt *context, uint16 Slave, uint16 Index, uint8 SubIdx, uint16 ErrorCode);
493 int ecx_init(ecx_contextt *context, const char * ifname);
494 int ecx_init_redundant(ecx_contextt *context, ecx_redportt *redport, const char *ifname, char *if2name);
495 void ecx_close(ecx_contextt *context);
496 uint8 ecx_siigetbyte(ecx_contextt *context, uint16 slave, uint16 address);
498 void ecx_siistring(ecx_contextt *context, char *str, uint16 slave, uint16 Sn);
502 int ecx_siiPDO(ecx_contextt *context, uint16 slave, ec_eepromPDOt* PDO, uint8 t);
503 int ecx_readstate(ecx_contextt *context);
504 int ecx_writestate(ecx_contextt *context, uint16 slave);
505 uint16 ecx_statecheck(ecx_contextt *context, uint16 slave, uint16 reqstate, int timeout);
506 int ecx_mbxempty(ecx_contextt *context, uint16 slave, int timeout);
507 int ecx_mbxsend(ecx_contextt *context, uint16 slave,ec_mbxbuft *mbx, int timeout);
508 int ecx_mbxreceive(ecx_contextt *context, uint16 slave, ec_mbxbuft *mbx, int timeout);
509 void ecx_esidump(ecx_contextt *context, uint16 slave, uint8 *esibuf);
510 uint32 ecx_readeeprom(ecx_contextt *context, uint16 slave, uint16 eeproma, int timeout);
511 int ecx_writeeeprom(ecx_contextt *context, uint16 slave, uint16 eeproma, uint16 data, int timeout);
513 int ecx_eeprom2pdi(ecx_contextt *context, uint16 slave);
514 uint64 ecx_readeepromAP(ecx_contextt *context, uint16 aiadr, uint16 eeproma, int timeout);
515 int ecx_writeeepromAP(ecx_contextt *context, uint16 aiadr, uint16 eeproma, uint16 data, int timeout);
516 uint64 ecx_readeepromFP(ecx_contextt *context, uint16 configadr, uint16 eeproma, int timeout);
517 int ecx_writeeepromFP(ecx_contextt *context, uint16 configadr, uint16 eeproma, uint16 data, int timeout);
518 void ecx_readeeprom1(ecx_contextt *context, uint16 slave, uint16 eeproma);
519 uint32 ecx_readeeprom2(ecx_contextt *context, uint16 slave, int timeout);
521 int ecx_receive_processdata_group(ecx_contextt *context, uint8 group, int timeout);
522 int ecx_send_processdata(ecx_contextt *context);
524 int ecx_receive_processdata(ecx_contextt *context, int timeout);
525 int ecx_send_processdata_group(ecx_contextt *context, uint8 group);
526 
527 #ifdef __cplusplus
528 }
529 #endif
530 
531 #endif
uint16 mbx_ro
Definition: ethercatmain.h:163
void ecx_siistring(ecx_contextt *context, char *str, uint16 slave, uint16 Sn)
Definition: ethercatmain.c:445
#define EC_MAXMBX
Definition: ethercatmain.h:31
int32 DCrtC
Definition: ethercatmain.h:189
uint16 SMlength
Definition: ethercatmain.h:73
int64 * DCtime
Definition: ethercatmain.h:415
int ec_writeeepromAP(uint16 aiadr, uint16 eeproma, uint16 data, int timeout)
boolean islost
Definition: ethercatmain.h:229
#define EC_MAXLEN_ADAPTERNAME
Definition: ethercatmain.h:39
uint64 ec_readeepromFP(uint16 configadr, uint16 eeproma, int timeout)
uint8 mbx_cnt
Definition: ethercatmain.h:167
uint8 entryport
Definition: ethercatmain.h:183
int ec_readstate(void)
ec_eepromFMMUt * eepFMMU
Definition: ethercatmain.h:425
uint8 ec_siigetbyte(uint16 slave, uint16 address)
int ec_send_processdata(void)
uint16 outputsWKC
Definition: ethercatmain.h:266
#define EC_MAXGROUP
Definition: ethercatmain.h:27
boolean ec_poperror(ec_errort *Ec)
void ecx_close(ecx_contextt *context)
Definition: ethercatmain.c:321
PACKED_END PACKED_BEGIN struct PACKED ec_state_status ec_state_status
int ecx_receive_processdata(ecx_contextt *context, int timeout)
uint8 DCactive
Definition: ethercatmain.h:203
uint16 aliasadr
Definition: ethercatmain.h:115
uint8 topology
Definition: ethercatmain.h:173
uint32 Ibytes
Definition: ethercatmain.h:137
uint8 consumedports
Definition: ethercatmain.h:177
char name[EC_MAXLEN_ADAPTERNAME]
Definition: ethercatmain.h:46
uint16 PhStart
Definition: ethercatmain.h:291
uint16 StartAddr
Definition: ethercatmain.h:72
int16 head
Definition: ethercatmain.h:348
uint16 esislave
Definition: ethercatmain.h:403
#define EC_MAXBUF
Definition: ethercattype.h:62
uint8 * outputs
Definition: ethercatmain.h:131
uint8_t uint8
Definition: osal.h:28
uint16 ecx_siiSMnext(ecx_contextt *context, uint16 slave, ec_eepromSMt *SM, uint16 n)
Definition: ethercatmain.c:580
uint8 FoEdetails
Definition: ethercatmain.h:215
int16 Ebuscurrent
Definition: ethercatmain.h:221
uint8 FMMU2func
Definition: ethercatmain.h:153
uint16 Dtype
Definition: ethercatmain.h:125
uint32 Obytes
Definition: ethercatmain.h:129
uint32 eep_rev
Definition: ethercatmain.h:121
uint16 mbx_rl
Definition: ethercatmain.h:161
ec_adaptert * next
Definition: ethercatmain.h:48
int ecx_send_processdata_group(ecx_contextt *context, uint8 group)
void ecx_pusherror(ecx_contextt *context, const ec_errort *Ec)
Definition: ethercatmain.c:154
int ec_receive_processdata(int timeout)
PACKED_BEGIN struct PACKED ec_SMcommtype ec_SMcommtypet
uint8 eep_pdi
Definition: ethercatmain.h:211
void ec_clearmbx(ec_mbxbuft *Mbx)
Definition: ethercatmain.c:921
uint32 LogStart
Definition: ethercatmain.h:55
int ecx_writeeepromAP(ecx_contextt *context, uint16 aiadr, uint16 eeproma, uint16 data, int timeout)
uint16 state
Definition: ethercatmain.h:109
int ec_init(const char *ifname)
int ecx_init_redundant(ecx_contextt *context, ecx_redportt *redport, const char *ifname, char *if2name)
Definition: ethercatmain.c:300
void ecx_packeterror(ecx_contextt *context, uint16 Slave, uint16 Index, uint8 SubIdx, uint16 ErrorCode)
Definition: ethercatmain.c:219
uint16 configindex
Definition: ethercatmain.h:205
struct ec_slave ec_slavet
uint32 eep_id
Definition: ethercatmain.h:119
int32 DCshift
Definition: ethercatmain.h:201
uint8 * outputs
Definition: ethercatmain.h:246
uint16_t uint16
Definition: osal.h:29
boolean ecx_iserror(ecx_contextt *context)
Definition: ethercatmain.c:206
uint32 SMflags
Definition: ethercatmain.h:74
uint8 group
Definition: ethercatmain.h:225
int ecx_receive_processdata_group(ecx_contextt *context, uint8 group, int timeout)
int64 ec_DCtime
Definition: ethercatmain.c:95
uint16 LogLength
Definition: ethercatmain.h:56
boolean ec_iserror(void)
struct ec_ering ec_eringt
uint16 ALstatuscode
Definition: ethercatmain.h:111
int32 DCrtA
Definition: ethercatmain.h:185
int ecx_eeprom2pdi(ecx_contextt *context, uint16 slave)
uint16 nsegments
Definition: ethercatmain.h:260
uint8 * esibuf
Definition: ethercatmain.h:399
uint16 parent
Definition: ethercatmain.h:179
#define EC_MAXEEPDO
Definition: ethercatmain.h:33
uint32 ec_readeeprom(uint16 slave, uint16 eeproma, int timeout)
uint8 Istartbit
Definition: ethercatmain.h:141
uint16 Ibits
Definition: ethercatmain.h:135
void ec_siistring(char *str, uint16 slave, uint16 Sn)
boolean hasdc
Definition: ethercatmain.h:252
uint8 blockLRW
Definition: ethercatmain.h:258
uint16 ec_siiFMMU(uint16 slave, ec_eepromFMMUt *FMMU)
int ecx_send_overlap_processdata_group(ecx_contextt *context, uint8 group)
uint16 Startpos
Definition: ethercatmain.h:289
int32 DCrtB
Definition: ethercatmain.h:187
ec_eringt * elist
Definition: ethercatmain.h:405
uint64 ecx_readeepromAP(ecx_contextt *context, uint16 aiadr, uint16 eeproma, int timeout)
uint8 CoEdetails
Definition: ethercatmain.h:213
PACKED_END struct ec_idxstack ec_idxstackT
#define EC_MAXSM
Definition: ethercatmain.h:35
int ec_init_redundant(const char *ifname, char *if2name)
ecx_portt * port
Definition: ethercatmain.h:387
char desc[EC_MAXLEN_ADAPTERNAME]
Definition: ethercatmain.h:47
uint8 Activate
Definition: ethercatmain.h:295
uint16 ecx_statecheck(ecx_contextt *context, uint16 slave, uint16 reqstate, int timeout)
Definition: ethercatmain.c:862
ec_groupt * grouplist
Definition: ethercatmain.h:395
uint16 ALstatuscode
Definition: ethercatmain.h:83
int ec_eeprom2pdi(uint16 slave)
PACKED_END PACKED_BEGIN struct PACKED ec_sm ec_smt
uint16 SIIindex
Definition: ethercatmain.h:207
int16 ecx_siifind(ecx_contextt *context, uint16 slave, uint16 cat)
Definition: ethercatmain.c:405
uint64 ecx_readeepromFP(ecx_contextt *context, uint16 configadr, uint16 eeproma, int timeout)
int ec_send_overlap_processdata_group(uint8 group)
int ecx_mbxempty(ecx_contextt *context, uint16 slave, int timeout)
Definition: ethercatmain.c:932
int ecx_writeeepromFP(ecx_contextt *context, uint16 configadr, uint16 eeproma, uint16 data, int timeout)
int ecx_writestate(ecx_contextt *context, uint16 slave)
Definition: ethercatmain.c:832
ec_PDOdesct * PDOdesc
Definition: ethercatmain.h:421
uint8 PhysStartBit
Definition: ethercatmain.h:60
int ec_slavecount
Definition: ethercatmain.c:69
uint8 FMMUactive
Definition: ethercatmain.h:62
uint32 ecx_readeeprom(ecx_contextt *context, uint16 slave, uint16 eeproma, int timeout)
uint16 configadr
Definition: ethercatmain.h:113
void ec_pusherror(const ec_errort *Ec)
uint8 LogStartbit
Definition: ethercatmain.h:57
PACKED_END PACKED_BEGIN struct PACKED ec_PDOassign ec_PDOassignt
int ec_eeprom2master(uint16 slave)
int ec_send_overlap_processdata(void)
uint16 alstatus
Definition: ethercatmain.h:329
void ec_free_adapters(ec_adaptert *adapter)
Definition: ethercatmain.c:144
uint16 alstatuscode
Definition: ethercatmain.h:331
ec_eepromSMt * eepSM
Definition: ethercatmain.h:423
int ec_siiPDO(uint16 slave, ec_eepromPDOt *PDO, uint8 t)
int32 pdelay
Definition: ethercatmain.h:193
void ec_packeterror(uint16 Slave, uint16 Index, uint8 SubIdx, uint16 ErrorCode)
void ec_readeeprom1(uint16 slave, uint16 eeproma)
uint8 blockLRW
Definition: ethercatmain.h:223
int slave
Definition: aliastool.c:44
int64_t int64
Definition: osal.h:31
uint32 * esimap
Definition: ethercatmain.h:401
uint8 unused1
Definition: ethercatmain.h:63
int ecx_writeeeprom(ecx_contextt *context, uint16 slave, uint16 eeproma, uint16 data, int timeout)
uint8 parentport
Definition: ethercatmain.h:181
uint16 unused2
Definition: ethercatmain.h:64
PACKED_END PACKED_BEGIN struct PACKED ec_alstatus ec_alstatust
uint32 logstartaddr
Definition: ethercatmain.h:242
#define PACKED_END
uint16 ec_siiSM(uint16 slave, ec_eepromSMt *SM)
int32_t int32
Definition: osal.h:27
int ec_mbxsend(uint16 slave, ec_mbxbuft *mbx, int timeout)
uint32 ec_readeeprom2(uint16 slave, int timeout)
uint16 Itype
Definition: ethercatmain.h:123
uint32 Ibytes
Definition: ethercatmain.h:248
uint16 Plength
Definition: ethercatmain.h:292
ec_PDOassignt * PDOassign
Definition: ethercatmain.h:419
int ecx_readstate(ecx_contextt *context)
Definition: ethercatmain.c:723
ec_adaptert * ec_find_adapters(void)
Definition: ethercatmain.c:131
uint8 ec_nextmbxcnt(uint8 cnt)
Definition: ethercatmain.c:907
int ecx_siiPDO(ecx_contextt *context, uint16 slave, ec_eepromPDOt *PDO, uint8 t)
Definition: ethercatmain.c:614
int16 ec_siifind(uint16 slave, uint16 cat)
void ecx_readeeprom1(ecx_contextt *context, uint16 slave, uint16 eeproma)
uint32 Obytes
Definition: ethercatmain.h:244
ec_SMcommtypet * SMcommtype
Definition: ethercatmain.h:417
boolean EcatError
Definition: ethercatmain.c:93
#define EC_MAXELIST
Definition: ethercatmain.h:21
uint64_t uint64
Definition: osal.h:32
uint8 EoEdetails
Definition: ethercatmain.h:217
int ec_mbxempty(uint16 slave, int timeout)
struct ec_group ec_groupt
int ec_send_processdata_group(uint8 group)
uint8 FMMU1func
Definition: ethercatmain.h:151
int ecx_mbxsend(ecx_contextt *context, uint16 slave, ec_mbxbuft *mbx, int timeout)
Definition: ethercatmain.c:968
uint8 eep_8byte
Definition: ethercatmain.h:209
int16 tail
Definition: ethercatmain.h:349
PACKED_END PACKED_BEGIN struct PACKED ec_PDOdesc ec_PDOdesct
uint8 * inputs
Definition: ethercatmain.h:250
boolean docheckstate
Definition: ethercatmain.h:270
int ecx_init(ecx_contextt *context, const char *ifname)
Definition: ethercatmain.c:288
int ec_writestate(uint16 slave)
uint8 FMMUtype
Definition: ethercatmain.h:61
struct ec_eepromSM ec_eepromSMt
uint16 mbx_wo
Definition: ethercatmain.h:159
PACKED_BEGIN struct PACKED ec_fmmu ec_fmmut
int ec_writeeeprom(uint16 slave, uint16 eeproma, uint16 data, int timeout)
#define EC_MAXSLAVE
Definition: ethercatmain.h:25
#define EC_MAXNAME
Definition: ethercatmain.h:23
struct ec_eepromFMMU ec_eepromFMMUt
int ecx_eeprom2master(ecx_contextt *context, uint16 slave)
PACKED_BEGIN struct PACKED ec_mbxheader ec_mbxheadert
uint16 mbx_proto
Definition: ethercatmain.h:165
uint16 Obits
Definition: ethercatmain.h:127
uint64 ec_readeepromAP(uint16 aiadr, uint16 eeproma, int timeout)
uint8 activeports
Definition: ethercatmain.h:175
uint16 ecx_siiSM(ecx_contextt *context, uint16 slave, ec_eepromSMt *SM)
Definition: ethercatmain.c:543
ecx_contextt ecx_context
Definition: ethercatmain.c:100
int16 Ebuscurrent
Definition: ethercatmain.h:256
uint16 unused
Definition: ethercatmain.h:330
void ecx_esidump(ecx_contextt *context, uint16 slave, uint8 *esibuf)
uint16 Isegment
Definition: ethercatmain.h:262
uint16 PhysStart
Definition: ethercatmain.h:59
int ec_receive_processdata_group(uint8 group, int timeout)
uint16 ec_siiSMnext(uint16 slave, ec_eepromSMt *SM, uint16 n)
uint8 FMMU0func
Definition: ethercatmain.h:149
uint32_t uint32
Definition: osal.h:30
void ec_esidump(uint16 slave, uint8 *esibuf)
uint16 mbx_l
Definition: ethercatmain.h:157
boolean hasdc
Definition: ethercatmain.h:169
int ec_writeeepromFP(uint16 configadr, uint16 eeproma, uint16 data, int timeout)
uint8 SoEdetails
Definition: ethercatmain.h:219
int16_t int16
Definition: osal.h:26
uint16 DCprevious
Definition: ethercatmain.h:197
void ec_close(void)
uint8 FMMUunused
Definition: ethercatmain.h:227
int ecx_send_processdata(ecx_contextt *context)
uint8 Ostartbit
Definition: ethercatmain.h:133
uint32 ecx_readeeprom2(ecx_contextt *context, uint16 slave, int timeout)
static uint8 esibuf[EC_MAXEEPBUF]
Definition: ec_master.c:60
uint16 ec_statecheck(uint16 slave, uint16 reqstate, int timeout)
boolean ecx_poperror(ecx_contextt *context, ec_errort *Ec)
Definition: ethercatmain.c:180
uint16 address
Definition: ethercatmain.h:319
int ec_mbxreceive(uint16 slave, ec_mbxbuft *mbx, int timeout)
#define EC_MAXIOSEGMENTS
Definition: ethercatmain.h:29
uint16 ecx_siiFMMU(ecx_contextt *context, uint16 slave, ec_eepromFMMUt *FMMU)
Definition: ethercatmain.c:503
int ecx_mbxreceive(ecx_contextt *context, uint16 slave, ec_mbxbuft *mbx, int timeout)
uint8 ptype
Definition: ethercatmain.h:171
boolean * ecaterror
Definition: ethercatmain.h:409
uint32 eep_man
Definition: ethercatmain.h:117
uint16 Startpos
Definition: ethercatmain.h:302
ec_idxstackT * idxstack
Definition: ethercatmain.h:407
uint16 DCnext
Definition: ethercatmain.h:254
uint8 LogEndbit
Definition: ethercatmain.h:58
uint8 ecx_siigetbyte(ecx_contextt *context, uint16 slave, uint16 address)
Definition: ethercatmain.c:334
int ecx_send_overlap_processdata(ecx_contextt *context)
uint16 DCnext
Definition: ethercatmain.h:195
uint8 FMMU3func
Definition: ethercatmain.h:155
ec_slavet * slavelist
Definition: ethercatmain.h:389
int32 DCcycle
Definition: ethercatmain.h:199
uint8 ec_mbxbuft[EC_MAXMBX+1]
Definition: ethercatmain.h:312
uint16 Ioffset
Definition: ethercatmain.h:264
int manualstatechange
Definition: ethercatmain.h:431
int32 DCrtD
Definition: ethercatmain.h:191
#define PACKED_BEGIN
#define EC_MAXFMMU
Definition: ethercatmain.h:37
int * slavecount
Definition: ethercatmain.h:391
uint16 inputsWKC
Definition: ethercatmain.h:268
uint8 * inputs
Definition: ethercatmain.h:139
struct ec_eepromPDO ec_eepromPDOt


soem
Author(s): Arthur Ketels and M.J.G. van den Molengraft
autogenerated on Mon Feb 28 2022 23:46:57