Accessing the CIO-DAC02 Digital-to-Analog converter from Computerboards, Inc.

By Stefan Zollner

Digital-to-analog conversion (D/A) is much simpler than A/D conversion. We use the inexpensive (USD 159) CIO-DAC02 board from Computerboards Inc. This board is capable of supplying output voltages at two channels in a variety of ranges (bipolar: +/- 5, +/- 10 V; unipolar: 0-5 V, 0-10 V) with an accuracy of 12 bits.

The sample code supplied here does not use all the capabilities of the board. The code is restricted to unipolar 0-10 V output. You can easily modify it (see the board manuals) if you need different output ranges. (Remember to set the jumpers on the board correctly.)

Since the board is fairly slow (150 microsecond settling time to 12 bit accuracy), there are no timing issues here. You can simply use the OUTP8 function in IOAD.DLL.

Source files

 * C++ code to use D/A converter - DAC.CPP
 * Header file for dac.cpp - DAC.HPP
 * A zip file containing all of the above, plus additional files - adctest.zip
 * Current version: version is 1.07 dated 04/19/1996

Note: The libraries IOAD.LIB contain the code in IO386.DLL and IO386.LIB. Use one or the other, but not both. The IOAD libraries and the zip file also contain code for analog/digital conversion (D/A) and digital input/output.

Disclaimer: This server is an experimental offering.

DISCLAIMER: This sample code is for your information only. Do not attempt to use this code on your equipment without first inspecting the source code and making sure it does what you want. This code is supplied as is without warranty or liability of any kind. Most of the brand names on this page are registered trademarks. The authors have no connection with Computerboards, IBM, or other computer companies.