Difference between revisions of "EtherCAT:EC SDO READ DOUBLE"
| Line 40: | Line 40: | ||
* [[EtherCAT:EC SDO READ|EC_SDO_READ]] | * [[EtherCAT:EC SDO READ|EC_SDO_READ]] | ||
* [[EtherCAT:EC SDO WRITE|EC_SDO_WRITE]] | * [[EtherCAT:EC SDO WRITE|EC_SDO_WRITE]] | ||
| + | * [[EtherCAT:EC SDO READ STRING|EC_SDO_READ_STRING]] | ||
* [[EtherCAT:EC PDO READ|EC_PDO_READ]] | * [[EtherCAT:EC PDO READ|EC_PDO_READ]] | ||
* [[EtherCAT:EC PDO WRITE|EC_PDO_WRITE]] | * [[EtherCAT:EC PDO WRITE|EC_PDO_WRITE]] | ||
}} | }} | ||
Revision as of 09:21, 23 October 2014
Similar to EC_SDO_READ, this function allows reading DOUBLE values.
To read data from the slave we have to specify a SDO index and a sub-index.
The first sub-index is 0. If only one sub-index exists, we still have to specify 0 (we cannot omit this field).
The read value is returned from the function and can be set to a variable.
| IMPORTANT | |
| At the moment only 32 bits variables can be read |
Input
Slave address, SDO index, SDO sub-index, Variable size (32 or 64 bits).
Output
None
Return Value
Value that is read from the slave.
Declaration
public function EC_SDO_READ_DOUBLE(byval slaveaddres as long, byval index as long, byval subindex as long, byval varSize as long) as double
Syntax
retVal = EC_SDO_READ_DOUBLE(<Slave address>, <SDO index>, <SDO sub-index>, <Variable Size>)
Exceptions
EC_SDO_READ_WRITE_DOUBLE - "SDO READ/WRITE DOUBLE ERROR: Invalid Size. Must be 32 or 64" 20071
EC_SLAVE_ADDRESS_ERROR - "SLAVE ADDRESS ERROR" 20032
EC_SDO_READ_WRITE_ONLY - "SDO READ ERROR: Attempt to read a write-only object" 20060
EC_SDO_READ_SIZE - "SDO READ ERROR: Received an unreasonable amount of data" 20064
Examples
retVal = EC_SDO_READ_DOUBLE(ax.Dadd, 0x2027, 0, 32) ' Read CDHD kvp