KUNBUS-COM EtherCAT
38 / 135
The first byte returns the status. If it is set to "0", the Master then
indicates that it cannot return any current status information since
there was no previous operation (this is usually the response to the
very first block transmission). A "1" indicates the successful
completion of the previous transmission. In the case of a 2, the
module sends the error code of an error in the subsequent byte,
which occurred during the previous block transmission.
If the status is "1", the 2 bytes after that at position 4 and 5 contain
the content of the memory register to be read at the address that was
transmitted at the last block with the read command. The 16-bit wide
register content read is prepared by the module in such a way that
the higher-value byte is transmitted as the 4th byte and the lower-
value byte is transmitted as the 5th byte ("Big-Endian" or "Motorola
format").
In the case of status "0" or "2", both data bytes at position 4 and 5
are invalid and must be discarded by the Master.
Reading more than 2 bytes
(Bulk-Read)
In this access type, the number of source registers to be read as well
as the start address are transmitted with the first transmission block
that has a fixed length of 5 bytes. After this block with metadata, the
transmission of the read data follows in a separate transmission
block with variable length. Therefore, this access type is suitable
primarily for larger volumes of data. The maximum permitted number
of source registers to be read depends on the source area: A
maximum of 128 registers (each 16-bit = 1 word) are permitted for
reading from the SSC output register area. A maximum of 16
registers per block is to be read for all other source areas. Byte
order:
All 16-bit wide register contents read are prepared by the module in
such a way that the higher-value byte is transmitted as the first byte
and the lower-value byte is transmitted as the second byte ("Big-
Endian" or "Motorola format"). The register contents are sent in
ascending address order, i.e. the start address first.
Transmission block with fixed length
Command
code
(1 byte)
Address area
(2 bytes)
Data length
(2 bytes)
Description
0x20
0x0000-0xFFFF
1-16/128/256
READ_BULK
0x00
0xXXXX
0xXXXX
NO_OPERATION*
The Master sends a block of variable length with 0 bytes to the
module.
Components