# cbAOut()

Sets the value of a D/A channel.

## Function Prototype

C/C++

int cbAOut(int BoardNum, int Channel, int Range, unsigned short DataValue)

Visual Basic

Function cbAOut(ByVal BoardNum&, ByVal Channel&, ByVal Range&, ByVal DataValue%) As Long

## Arguments

BoardNum

The number associated with the board when it was installed with InstaCal or created with cbCreateDaqDevice(). BoardNum may be 0 to 99. The specified board must have a D/A.

Channel

D/A channel number. The maximum allowable channel depends on which type of D/A board is being used.

Range

D/A range code. The output range of the D/A channel can be set to any of those supported by the board. If the D/A board does not have programmable ranges then this argument will be ignored. Refer to board specific information for a list of the supported A/D ranges.

DataValue

Value to set D/A to. Must be in the range 0 - n where n is the value 2Resolution – 1 of the converter.

Exception: using 16-bit boards with Basic range is –32,768 to 32,767. Refer to the discussion on 16-bit values using a signed integer data type for more information.

## Returns

- Error code or 0 if no errors.

## Notes

- "Simultaneous Update" or "Zero Power-Up" boards: If you set the simultaneous update jumper for simultaneous operation, use cbAOutScan() for simultaneous update of multiple channels. cbAOut() always writes the D/A data then reads the D/A, which causes the D/A output to be updated.