Multi-board Operation
Control up to 16 I/O boards simultaneously, including multiple units of the same board type.
Consistent API
The Universal Driver’s command syntax is consistent from board to board and across operating systems. You can re-target your application for a different board or operating system with a minimum of re-engineering.
Auto-calibration
The Universal Driver provides full support for the advanced autocalibration features of Diamond’s line of analog I/O boards. Calibrate your board as often as you want with simple software commands.
User Interrupts
Write your own interrupt routine and have it execute each time your board generates an interrupt. Your own code can run together with, or instead of, the standard interrupt routines. For example, you can provide real-time FFT calculations on analog data as it is acquired, or you can synchronize your code to run at a programmed interval or in response to an external event.
Extensive Programming Examples
Each board has its own set of example programs for most or all of the applicable functions. The programs are provided both in source code and pre-compiled for each supported operating system. The programs are extensively commented, so you can get familiar with the Universal Driver quickly. In addition, the example programs are provided with project files with all the necessary settings, so you can use it as a starting point and recompile it with a minimum of hassle.
Counter/Timer & Watchdog Support
The Universal Driver includes advanced counting/timing functions such as frequency/period measurement and pulse width modulation. It also has support for the watchdog timer circuit on our single board computers.
Low-Level Read/Write Support
The Universal Driver also provides low-level functions to enable read/write operations directly to the board registers for custom applications. This is useful in some operating systems where direct I/O access to hardware is normally prohibited. |