4-6
Interrupts and I/O Address Mapping
KPCI-PIO24 User’s Manual
Setting control and data registers
The control registers must first be set by software statements to set each group of A, B, and C
ports for the desired direction (input or output). This is performed by writing to the control
registers located at the Base A 0x10, Base A 0x14, Base A 0x18, and
Base A 0x1C. In most applications all 8 bits in each port will be set as either input
or output.
Thereafter, data can be input to or output from the data registers. Data registers configured as
outputs are set by writing ones and zeros to these registers with software statements. Data
registers configured as inputs are set by applying logical high and low signals to the input
terminals; the set values in these registers are retrieved by software statements.
Software manipulation of data registers for an ISA board, via I/O port calls, is straightforward.
However, software manipulation of data registers for a PCI board, such as the KPCI-PIO24, is
more involved. As mentioned in the chapter introduction, DriverLINX eliminates the need for
user interaction with control and data registers. However, control and data registers can be
manipulated in the following special situations:
•
You are an advanced user needing to use the KPCI-PIO24 with an operating system other
than Microsoft Windows 95/98 or Windows NT 4.0 or greater. In this situation, you must
write a new driver, bypassing DriverLINX entirely. This task requires an in-depth knowledge
both of the AMCC S5933 PCI Bus Controller and your development operating system.
•
You wish to program in an ActiveX hosting language other than Visual C++, Visual Basic, or
Delphi. In this situation, you may need to use the “Direct I/O ActiveX Automation Object”
that comes with DriverLINX. The Direct I/O ActiveX Automation Object allows you to set
the control and data registers directly and bypass the DriverLINX API, yet avoids the full
complexities of PCI bus interfacing and the AMCC S5933 PCI Bus Controller. Refer to your
DriverLINX manual for more information.
•
You wish to reuse an existing program that makes port I/O calls to an ISA-bus digital I/O
board, such as the PIO-96 or PIO-24. In this situation, you can reuse your existing program
with the KPCI-PIO24, in Windows 95/98 only, via the Hardware I/O Emulation driver
included on your DriverLINX CD ROM. The Hardware I/O Emulation driver traps the port
I/O calls and applies them properly to the KPCI-PIO24 board. Refer to your DriverLINX
manual for more information.
Summary of Contents for KPCI-PIO24
Page 12: ...1 Overview...
Page 14: ...2 General Description...
Page 18: ...3 Installation...
Page 29: ...4 Interrupts and I O Address Mapping...
Page 35: ...5 Troubleshooting...
Page 38: ...5 4 Troubleshooting KPCI PIO24 User s Manual Figure 5 1 Problem isolation flowchart...
Page 56: ...A Specifications...
Page 58: ...B Glossary...