Impulse 463E User Manual
Page 88

© Sealevel Systems, Inc.
- 85 -
SeaI/O User Manual
Reading from Analog Inputs
In order to read from an A/D channel, SeaMAX requires that an input register read
occurs – much like a discreet input read is required to read the digital input. It’s
important to note that a read of input register type requires that there be 2 bytes of
available space allocated for each register being read. The example below
exemplifies an input register read from within Visual C++.
result = cw32.Read(slaveId, INPUTREG, start, range, ad_input);
Following is an example of an input register read performed within a Visual Basic
application.
returnValue = SeaMaxW32Read(seaMaxPointer, slaveId, INPUTREG, startLoc,
range, recvData(0))
The data returned by the Read function is only a binary value. In order to translate
the data into a meaningful unit such as Volts or milliamps, refer to the example
documentation provided within the SeaMAX installation.
Writing to Analog Outputs
Similar to reading from an A/D channel, writing to an analog output occurs by
issuing a holding register write. Holding registers are two bytes wide and require that
the data be available in Big Endian format.
result = cw32.Write(slaveId, HOLDINGREG, start, range, da_output);
The following example shows how to write to a holding register within Visual Basic.
returnValue = SeaMaxW32Write(seaMaxPointer, slaveId, HOLDINGREG,
startLoc, range, sendData(0))
Similar to reading A/D values, in order to convert a desired Voltage value into the
appropriate Write data, consult the examples installed with the SeaMAX installation.