Figure 45 depicts a simplified block diagram of the National Instruments data acquisition card that will be used in the lab portion of the class. It has 16 analog channels which can either be configured as 16 single ended inputs, or 8 differential inputs. This is accomplished by the multiplexer, or switching circuit and is software configurable.
The output of the multiplexer feeds into an amplifier whose gain is programmable through software. This circuit allows the programmer to select an amplification appropriate to the signal that is to be measured. The board used in the lab is capable of implementing gains from 0.5 up to 100. As an example of how this programmable gain would be used, consider a bipolar (both positive and negative) input signal. The analog to digital converter has an input voltage range of V, hence a gain of 0.5 would enable the board to handle voltages ranging between V (5/0.5). Similarly, a gain of 100 would result in a maximum range of mV (5/100) at the input to the board.
In addition to the analog to digital converters, there are 2 digital to analog converters which allow one to generate analog signals. Eight general purpose digital I/O lines are also provided which allow the board to control external digital circuitry or monitor the state of external devices such as switches or buttons.
Low level communication with the data acquisition board is handled through drivers provide by National Instruments. These drivers allow the programmer to perform all the necessary tasks such as initializing, configuring, and sending and receiving data from the board. It is possible to use these drivers from most of the common C compilers available, but we will primarily use a compiler/development package called Lab Windows CVI. This tool is designed for use specifically with these boards and helps to shield the programmer from many of the potentially unnecessary low level details of the hardware.