User manual
©
National Instruments Corporation D-1 PC-DIO-96/PnP User Manual
Register-Level
Programming
Appendix
D
This appendix describes in detail the address and function of each of the
PC-DIO-96/PnP control and status registers. This appendix also
includes important information about register-level programming on
the PC-DIO-96/PnP along with program examples written in C and
assembly language.
Note: If you plan to use a programming software package such as
LabWindows/CVI or NI-DAQ with your PC-DIO-96/PnP board, you need
not read this appendix.
Introduction
Note: You can configure your PC-DIO-96/PnP board to use base addresses in the
range of 100 to 3E0 hex. Your PC-DIO-96/PnP board occupies 16 bytes of
address space and must be located on a 16-byte boundary. Therefore, valid
addresses include 100, 110, 120..., 3E0 hex. The base I/O address is
software configured and does not require you to manually change any
settings on the board. For more information on configuring the
PC-DIO-96PnP, see Chapter 2, Installation and Configuration.
The three 8-bit ports of the 82C55A are divided into two groups of 12
signals each: group A and group B. One 8-bit control word selects the
mode of operation for each group. The group A control bits configure
port A (A7 through A0) and the upper 4 bits (nibble) of port C (C7
through C4). The group B control bits configure port B (B7 through B0)
and the lower nibble of port C (C3 through C0). These configuration
bits are defined in the Register Description for the 82C55A section later
in this appendix. Because there are four 82C55A PPI devices on the
board, they are referenced as PPI A, PPI B, PPI C, and PPI D when
differentiation is required.
The three 16-bit counters of the 82C53 are accessed through individual
data ports and controlled by one 8-bit control word. The control word
selects how the counter data ports are accessed and what mode the