Skip to main content
Skip table of contents

eWriteAddressArray [LJM User's Guide]

Write consecutive devic, specified by an address and type.

Syntax

LJM_ERROR_RETURN LJM_eWriteAddressArray(
int Handle,
int Address,
int Type,
int NumValues,
double * aValues,
int * ErrorAddress)

Parameters

Handle [in]

A device handle. The handle is a connection ID for an active device. Generate a handle with LJM_Open or LJM_OpenS.

Address [in]

The address that specifies the Modbus register(s) to write. Addresses can be found throughout the device datasheet or in the Modbus Map.

Type [in]

The data type of the value(s):

Type

Integer Value

LJM_UINT16

0

LJM_UINT32

1

LJM_INT32

2

LJM_FLOAT32

3

NumValues [in]

The number of consecutive values.

aValues [in]

An array of values to be transferred to the device. The array size should be equal to NumValues. Each value will be converted according to Type.

ErrorAddress [out]

If error, the address responsible for causing an error.

Returns

LJM errorcodes or 0 for no error.

Remarks

The Name version of this function is LJM_eWriteNameArray.

If NumValues is large enough, these functions will automatically split writes into multiple packets based on the current device's effective data packet size. Using both non-buffer and buffer registers in one function call is not supported.

Example

Write DAC0 and DAC1 as an array

C
int LJMError;
int errorAddress;
double newValues[2] = {1.2, 3.4};

// handle comes from LJM_Open()
LJMError = LJM_eWriteAddressArray(handle, 1000, LJM_FLOAT32, 2, newValues, &errorAddress);
if (LJMError != LJME_NOERROR) {
    // Deal with error
}
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.