Headerfile for ethercatbase.c. More...

Go to the source code of this file.
Functions | |
| int | ec_setupdatagram (void *frame, uint8 com, uint8 idx, uint16 ADP, uint16 ADO, uint16 length, void *data) |
| Generate and set EtherCAT datagram in a standard ethernet frame. | |
| int | ec_adddatagram (void *frame, uint8 com, uint8 idx, boolean more, uint16 ADP, uint16 ADO, uint16 length, void *data) |
| Add EtherCAT datagram to a standard ethernet frame with existing datagram(s). | |
| int | ec_BWR (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| BRW "broadcast write" primitive. | |
| int | ec_BRD (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| BRD "broadcast read" primitive. | |
| int | ec_APRD (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| APRD "auto increment address read" primitive. | |
| int | ec_ARMW (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| APRMW "auto increment address read, multiple write" primitive. | |
| int | ec_FRMW (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| FPRMW "configured address read, multiple write" primitive. | |
| uint16 | ec_APRDw (uint16 ADP, uint16 ADO, int timeout) |
| APRDw "auto increment address read" word return primitive. | |
| int | ec_FPRD (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| FPRD "configured address read" primitive. | |
| uint16 | ec_FPRDw (uint16 ADP, uint16 ADO, int16 timeout) |
| FPRDw "configured address read" word return primitive. | |
| int | ec_APWRw (uint16 ADP, uint16 ADO, uint16 data, int timeout) |
| APWRw "auto increment address write" word primitive. | |
| int | ec_APWR (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| APWR "auto increment address write" primitive. | |
| int | ec_FPWRw (uint16 ADP, uint16 ADO, uint16 data, int timeout) |
| FPWR "configured address write" primitive. | |
| int | ec_FPWR (uint16 ADP, uint16 ADO, uint16 length, void *data, int timeout) |
| FPWR "configured address write" primitive. | |
| int | ec_LRW (uint32 LogAdr, uint16 length, void *data, int timeout) |
| LRW "logical memory read / write" primitive. | |
| int | ec_LRD (uint32 LogAdr, uint16 length, void *data, int timeout) |
| LRD "logical memory read" primitive. | |
| int | ec_LWR (uint32 LogAdr, uint16 length, void *data, int timeout) |
| LWR "logical memory write" primitive. | |
| int | ec_LRWDC (uint32 LogAdr, uint16 length, void *data, uint16 DCrs, int64 *DCtime, int timeout) |
| LRW "logical memory read / write" primitive plus Clock Distribution. | |
Headerfile for ethercatbase.c.
Definition in file ethercatbase.h.
| int ec_adddatagram | ( | void * | frame, | |
| uint8 | com, | |||
| uint8 | idx, | |||
| boolean | more, | |||
| uint16 | ADP, | |||
| uint16 | ADO, | |||
| uint16 | length, | |||
| void * | data | |||
| ) |
Add EtherCAT datagram to a standard ethernet frame with existing datagram(s).
| [out] | frame | = framebuffer |
| [in] | com | = command |
| [in] | idx | = index used for TX and RX buffers |
| [in] | more | = TRUE if still more datagrams to follow |
| [in] | ADP | = Address Position |
| [in] | ADO | = Address Offset |
| [in] | length | = length of datagram excluding EtherCAT header |
| [in] | data | = databuffer to be copied in datagram |
Definition at line 109 of file ethercatbase.c.

APRD "auto increment address read" primitive.
Blocking.
| [in] | ADP | = Address Position, each slave ++, slave that has 0 excecutes |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [out] | data | = databuffer to put slave data in |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 220 of file ethercatbase.c.


APRDw "auto increment address read" word return primitive.
Blocking.
| [in] | ADP | = Address Position, each slave ++, slave that has 0 reads. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 298 of file ethercatbase.c.


APWR "auto increment address write" primitive.
Blocking.
| [in] | ADP | = Address Position, each slave ++, slave that has 0 writes. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [in] | data | = databuffer to write to slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 372 of file ethercatbase.c.


APWRw "auto increment address write" word primitive.
Blocking.
| [in] | ADP | = Address Position, each slave ++, slave that has 0 writes. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | data | = word data to write to slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 358 of file ethercatbase.c.


APRMW "auto increment address read, multiple write" primitive.
Blocking.
| [in] | ADP | = Address Position, each slave ++, slave that has 0 reads, following slaves write. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [out] | data | = databuffer to put slave data in |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 247 of file ethercatbase.c.

BRD "broadcast read" primitive.
Blocking.
| [in] | ADP | = Address Position, normally 0 |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [out] | data | = databuffer to put slave data in |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 189 of file ethercatbase.c.


BRW "broadcast write" primitive.
Blocking.
| [in] | ADP | = Address Position, normally 0 |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [in] | data | = databuffer to be written to slaves |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 163 of file ethercatbase.c.


FPRD "configured address read" primitive.
Blocking.
| [in] | ADP | = Address Position, slave that has address reads. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [out] | data | = databuffer to put slave data in |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 317 of file ethercatbase.c.


FPRDw "configured address read" word return primitive.
Blocking.
| [in] | ADP | = Address Position, slave that has address reads. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 341 of file ethercatbase.c.


FPWR "configured address write" primitive.
Blocking.
| [in] | ADP | = Address Position, slave that has address writes. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [in] | data | = databuffer to write to slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 407 of file ethercatbase.c.


FPWR "configured address write" primitive.
Blocking.
| [in] | ADP | = Address Position, slave that has address writes. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | data | = word to write to slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 393 of file ethercatbase.c.


FPRMW "configured address read, multiple write" primitive.
Blocking.
| [in] | ADP | = Address Position, slave that has address reads, following slaves write. |
| [in] | ADO | = Address Offset, slave memory address |
| [in] | length | = length of databuffer |
| [out] | data | = databuffer to put slave data in |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 274 of file ethercatbase.c.

LRD "logical memory read" primitive.
Blocking.
| [in] | LogAdr | = Logical memory address |
| [in] | length | = length of bytes to read from slave. |
| [out] | data | = databuffer to read from slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 453 of file ethercatbase.c.

LRW "logical memory read / write" primitive.
Blocking.
| [in] | LogAdr | = Logical memory address |
| [in] | length | = length of databuffer |
| [in,out] | data | = databuffer to write to and read from slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 428 of file ethercatbase.c.

| int ec_LRWDC | ( | uint32 | LogAdr, | |
| uint16 | length, | |||
| void * | data, | |||
| uint16 | DCrs, | |||
| int64 * | DCtime, | |||
| int | timeout | |||
| ) |
LRW "logical memory read / write" primitive plus Clock Distribution.
Blocking. Frame consists of two datagrams, one LRW and one FPRMW.
| [in] | LogAdr | = Logical memory address |
| [in] | length | = length of databuffer |
| [in,out] | data | = databuffer to write to and read from slave. |
| [in] | DCrs | = Distributed Clock reference slave address. |
| [out] | DCtime | = DC time read from reference slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 502 of file ethercatbase.c.

LWR "logical memory write" primitive.
Blocking.
| [in] | LogAdr | = Logical memory address |
| [in] | length | = length of databuffer |
| [in] | data | = databuffer to write to slave. |
| [in] | timeout | = timeout in us, standard is EC_TIMEOUTRET |
Definition at line 478 of file ethercatbase.c.

| int ec_setupdatagram | ( | void * | frame, | |
| uint8 | com, | |||
| uint8 | idx, | |||
| uint16 | ADP, | |||
| uint16 | ADO, | |||
| uint16 | length, | |||
| void * | data | |||
| ) |
Generate and set EtherCAT datagram in a standard ethernet frame.
| [out] | frame | = framebuffer |
| [in] | com | = command |
| [in] | idx | = index used for TX and RX buffers |
| [in] | ADP | = Address Position |
| [in] | ADO | = Address Offset |
| [in] | length | = length of datagram excluding EtherCAT header |
| [in] | data | = databuffer to be copied in datagram |
Definition at line 69 of file ethercatbase.c.

1.6.3