Programming the dio-32b – Impulse 3093 User Manual
Page 10

© Sealevel Systems, Inc.
- 8 -
DIO-32B User Manual
Programming the DIO-32B
Sealevel’s SeaI/O software is provided to assist in the development of reliable
applications for the Sealevel Systems family of digital I/O adapters. Included on the
SeaI/O CD are driver functions for use in accessing the I/O as well as helpful
samples and utilities.
Programming for Windows
The SeaI/O API (Application Programmer Interface) provides a variety of useful
high-level function calls implemented in a Windows dynamic link library (DLL).
The API is defined in the help file (Start/Programs/SeaIO/SeaIO Help) under
“Application Programmers Interface”. This help file also includes detailed
information dealing with installation / removal of the software and information
about latency, logic states, and device configuration.
For C language programmers we recommend using the API to access the DIO-32B.
If you are programming in Visual Basic, using the ActiveX control included with
SeaI/O is advised.
Samples and Utilities
A variety of sample programs and utilities (both executable and source code) are
included with SeaI/O. Further documentation on these samples can be found by
selecting “Start/Programs/SeaIO/Sample Application Description”. Information
about where the files are physically stored on your disk is also included in this same
file.
Programming for Linux
SeaI/O for Linux consists of two major parts: a kernel module
and a library. The
kernel module is a simple IO pass-through device, allowing the library to handle the
more sophisticated functions provided to SeaI/O users. It is provided in a ‘tarball’
format and can easily be compiled and included in the kernel build.
Application Programmers Interface (API)
Most modern operating systems do not allow direct hardware access. The SeaIO
driver and API have been included to provide control over the hardware in Windows
and Linux environments. The purpose of this section of the manual is to help the
customer with the mapping of the API to the actual inputs and relays for the 3093
specifically. Complete documentation of the API can be found in its accompanying
help file.
Digital I/O Interface
The DIO-32B provides four parallel input/output (I/O) ports. The ports are
organized as ports A, B, C, and D. Port A and B are input ports interfaced to
optically-isolated inputs, while ports C and D are reed relay output ports. Assuming
an I/O address of 300 Hex the following table shows the Port Addresses.
Base Address
Hex
Decimal
Mode
Port A Address
300
768
Port B Address
301
769
Optically Isolated Input Port
Port C Address
302
770
Port D Address
303
771
Reed Relay Output Port