Diamond Systems
Onyx-MM-DIO Low-Cost 48-Line Digital I/O PC/104 Module
Onyx-MM-DIO has 48 digital I/O lines using 2 82C55 ICs. Each chip has 24 I/O lines organized as three 8-bit ports, A, B, and C. All I/O lines are connected to 10KOhm pull-up resistors, and on power-up or system reset, all ports reset to input and are pulled high. A control register on the 82C55 chip allows you to program each port for input or output and for different operating modes, including basic I/O, strobed I/O, and bit set/reset.
Mode 0 operation provides basic input and output operations. No handshaking signals are used. This is the most common method of digital I/O and is useful for reading status signals, turning switches on and off, etc. All three ports can operate in Mode 0.
Mode 1 operation provides strobed I/O on ports A and B with handshaking signals provided on port C. In input mode, one signal is a strobe to latch data into the port, and a second signal is an acknowledge output. In output mode, one signal is used to indicate that the CPU has written new data to the port, and a second signal is an acknowledge input.
Mode 2 operation allows the use of Port A as a bidirectional data bus, with port C lines used for handshaking. Port A is normally in tristate mode. When the CPU writes new data to port A, an output signal indicates new data is available. In response, the external circuit strobes an acknowledge input signal, thereby enabling the output buffers on Port A. The external circuit can also latch new data into Port A with an input data strobe signal.
Bit set/reset mode enables individually setting (1) or resetting (0) any bit on Port C without having to read Port C and mask or protect unaltered bits.
Diamond's free Universal Driver software provides a comprehensive C programming library to control all the digital I/O features. Example programs are included with both source code and executables to assist you in developing your application quickly.