Acces PCI-DIO-24H User`s guide

Add to my manuals
14 Pages

advertisement

Acces PCI-DIO-24H User`s guide | Manualzz

User's Guide

http://www.omega.com

e-mail: [email protected]

PCI-DIO24

PCI-DIO24H

PCI-DIO24H/CTR3

one of the resistors in a circuit is proportional to the voltage across the total resistance in the circuit.

The trick to using a voltage divider is to choose two resistors with the proper proportions relative to the full scale of the digital input and the maximum signal voltage.

The phenomena of dropping the voltage proportionally is often called attenuation.

The formula for attenuation is:

Attenuation = R1+R2

R2

The variable Attenuation is the proportional difference between the signal voltage max and the full scale of the analog input.

2 = 10K+10K

10K

R1=(A-1)*R2

For example, if the signal varies between 0 and 10 volts and you wish to measure that with an PCI-DIO24 board with a full scale range of 0 to 5 volts, the Attenuation is 2:1 or just 2.

For a given attenuation, pick a handy resistor and call it R2, then use this formula to calculate R1.

Digital inputs can readily use voltage dividers. For example, if you wish to measure a digital signal that is at 0 volts when off and 24 volts when on, you cannot connect that directly to the PCI-DIO24 digital inputs. The voltage must be dropped to 5 volts max when on. The Attenuation is 24:5 or 4.8. Use the equation above to find an appropriate R1 if R2 is 1K. Remember that a TTL input is 'on' when the input voltage is greater than 2.5 volts.

IMPORTANT NOTE

The resistors, R1 and R2, are going to dissipate all the power in the divider circuit according to the equation Current = Voltage /

Resistance. The higher the value of the resistance (R1 + R2) the less power dissipated by the divider circuit. Here is a simple rule:

For Attenuation of 5:1 or less, no resistor should be less than 10K.

For Attenuation of greater than 5:1, no resistor should be < 1K.

The CIO-TERMINAL is a 16" by 4" screw terminal board with two 37 pin D type connectors and 56 screw terminals (12 - 22 AWG). Designed for table top, wall or rack mounting, the board provides prototype, divider circuit, filter circuit and pull-up resistor positions which you may complete with the proper value components for your application.

23

7.2 TTL TO SOLID STATE RELAYS

Many applications require digital outputs to switch AC and DC voltage motors on and off and to monitor AC and DC voltages. These AC and high DC voltages cannot be controlled or read directly by the TTL digital lines of a PCI-DIO24.

Solid State Relays, such as those available from Omega, allow control and monitoring of AC and high DC voltages and provide 750V isolation. Solid State

Relays (SSRs) are the recommended method of interfacing to AC and high DC signals.

The most convenient way to use solid state relays and a PCI-DIO24 board is to purchase a Solid State Relay Rack. A SSR Rack is a circuit board with output buffer chips which are powerful enough to switch the SSR and sockets to plug SSRs into.

SSR Racks are available from Computer Boards and most manufacturers of SSRs. If you have only a few outputs to control, you may also wish to consider the DR-OAC or DR-ODC, single point, DIN mountable SSRs.

The high current outputs of the PCI-DIO24H and PCI-DIO24H/CTR3 boards are suitable to drive SSR’ directly but the CMOS outputs of the PCI-DIO24 do not have sufficient drive to connect directly to most SSRs. If you only want to drive one or two

SSRs with CMOS outputs, all you need is a 74LS244 output buffer chip between the

82C55 output and the SSR. Of course the SSR will need 5 volt power as well.

7.3 VOLTAGE DIVIDERS

If you wish to measure a signal which varies over a range greater than the input range of a digital input, a voltage divider can drop the voltage of the input signal to the level the digital input can measure.

A voltage divider takes advantage of Ohm's law, which states,

Voltage = Current * Resistance

Implied in the above is that any variation in the voltage drop for the circuit as a whole will have a pro-

portional variation in all the voltage drops in the circuit.

A voltage divider takes advantage of the fact that the voltage across

S ig n a l

H ig h

V 1

R 1

S ig n a l

Volts

V in

C IO -D IO 24

In p u t

V 2

Vou t

R 2

S ig n a l

L o w

G ro u n d t

SIM PLE VO LTA G E DIVID ER - Vin = R1+R 2

Vou t R 2

22

TABLE OF CONTENTS

1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1

2 QUICK START & INSTALLATION . . . . . . . . . . . . . . . . . .

2.1 WINDOWS 95, 98 & NT . . . . . . . . . . . . . . . . . . . . . . . . .

2.2 DOS and/or Windows 3.1 . . . . . . . . . . . . . . . . . . . . . . . .

2.3 InstaCal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3 RUN InstaCAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4 Testing The Installation . . . . . . . . . . . . . . . . . . . . . . . . .

2

2

3

3

3

4

3 I/O CONNECTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1 CABLES AND SCREW TERMINAL BOARDS . . . . . . . . .

3.2 CONNECTOR DIAGRAM - PCI-DIO24, -24H &

-24H/CTR3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3 SIGNAL CONNECTION CONSIDERATIONS . . . . . . . . .

3.4 COUNTER CONNECTIONS & SETUP . . . . . . . . . . . . .

5

5

5

6

7

4 SOFTWARE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

5 I/O REGISTER MAPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.1 BOARD CONTROL REGISTERS . . . . . . . . . . . . . . . . .

5.1 82C55 CONTROL & DATA REGISTERS . . . . . . . . . . .

5.2 82C55 DIGITAL I/O REGISTERS . . . . . . . . . . . . . . . .

5.3 OUTPUT PORTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.4 INPUT PORTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.5 82C54 COUNTER CHIP . . . . . . . . . . . . . . . . . . . . . . .

8

10

11

12

13

14

15

6 SPECIFICATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.1 PCI-DIO24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.2 PCI-DIO24H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.3 PCI-DIO24H/CTR3 . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

16

17

18

7 ELECTRONICS AND INTERFACING . . . . . . . . . . . . . . .

7.1 PULL UP & PULL DOWN RESISTORS . . . . . . . . . . . .

7.2 TTL TO SOLID STATE RELAYS . . . . . . . . . . . . . . . . . .

7.3 VOLTAGE DIVIDERS . . . . . . . . . . . . . . . . . . . . . . . . .

20

20

22

22

The pull-up resistor provides a reference to +5V while its value of 2200 ohms requires only 2.3 mA of drive current

If the 82C55 is reset and enters high impedance input, the line is pulled high. At that point, both the 82C55 AND the device being controlled will sense a high signal.

If the 82C55 is in output mode, the 82C55 has more than enough power (2.5mA) to over ride the pull-up/down resistor's high signal and drive the line to 0 volts. If the

82C55 asserts a high signal, the pull up resistor guaranties that the line goes to +5V.

Of course, a pull-down resistor accomplishes the same task except that the line is pulled low when the 82C55 is reset. The 82C55 has more than enough power to drive the line high.

The PCI-DIO24 series boards are equipped with positions for pull-up/down resistors

Single Inline Packages (SIPs). The positions are marked A, B and C and are located beside the 82C55 or output chips.

A 2.2K, 8 resistor SIP is made of 8, 2.2K resistors all connected one side to a single common point and the other, each to a pin protruding from the SIP. The common line to which all resistor are connected also protrudes from the SIP. The common line is marked with a dot and is at one end of the SIP.

The SIP may be installed as pull-up or pull-down. At each location, A, B & C on the

PCI-DIO24 series boards, there are 10 holes in a line. One end of the line is +5V, the other end is GND. They are so marked. The 8 holes in the middle are connected to the 8 lines of the port, A, B, or C.

A resistor value of 2.2K is recommended. Use other values only if you have calculated the necessity of doing so.

UNCONNECTED INPUTS FLOAT!

Keep in mind that unconnected inputs float. If you are using the DIO24 board for input, and have unconnected inputs, ignore the data from those lines.

In other words, if you connect bit A0 and not bit A1, do not be surprised if A1 stays low, stays high or tracks A0... It is unconnected and so unspecified. The 82C55 is not malfunctioning. In the absence of a pull-up/down, any input to a PCI-DIO24 which is unconnected, is unspecified!

You do not have to tie input lines, and unconnected lines will not affect the performance of connected lines. Just make sure that you mask out any unconnected bits in software!

21

7 ELECTRONICS AND INTERFACING

This short, simple introduction to the electronics most often needed by digital I/O board users covers a few key concepts.

IMPORTANT NOTE

It cannot be stated often enough to those unfamiliar with the

82C55, WHENEVER THE 82C55 IS POWERED ON OR RESET,

ALL PINS ARE SET TO HIGH IMPEDANCE INPUT.

The implications of this fact is that if you have output devices such as solid state relays, they may be switched on whenever the computer is powered on or reset. To prevent unwanted switching and to drive all outputs to a known state after power on or reset, pull all pins either high or low through a 2.2K resistor.

7.1 PULL UP & PULL DOWN RESISTORS

Whenever the 82C55 is powered on or reset, the control register is set to a known state. That state is mode 0, all ports input.

When used as an output device to control other TTL input devices, the 82C55 applies a voltage level of 0V for low and 2.5V-5V for high. It is the output voltage level of the 82C55 that the device being controlled responds to.

The concept of output voltage for an 82C55 in input mode is meaningless. Do not connect a volt meter to the floating input of an 82C55. It will show you nothing of meaning. In input mode the 82C55 is in 'high Z' or high impedance. If your 82C55 was connected to another input chip (the device you were controlling), the inputs of that chip are left floating whenever the 82C55 is in input mode.

If the inputs of the device you are controlling are left to float, they may float up or down. Which way they float is dependent on the characteristics of the circuit and the electrical environment; and may be unpredictable! This is why it often appears that the 82C55 has gone

'high' after power up. The result is that your controlled device gets turned on! That is why you need pull up/down resistors.

Shown here is one 82C55 digital output with a pull-up resistor attached.

20

1 INTRODUCTION

This manual provides information on PCI-DIO24, PCI-DIO24H and

PCI-DIO24H/CTR3 digital I/O boards and accessories. The manual is organized into separate sections for those aspects of a product which are unique. Some issues, such as simple programming and electronic interfacing are applicable to all of the digital boards.

The PCI-DIO24 is a single 82C55 digital I/O chip interfaced to the PCI bus, with all its I/O lines accessible through the board's 37 pin connector. The I/O pins of an

82C55 are CMOS TTL level.

PCI-DIO24H is a high drive, 24 line digital I/O board. The control register which sets the direction of the I/O ports is identical to an 82C55 in mode 0 (see 82C55 data sheet). The I/O pins are high drive TTL capable of sourcing 15mA and sinking

64mA.

PCI-DIO24H/CTR3 is a PCI-DIO24H with an 82C54 counter added. The 82C54 is a

10MHz down-counter chip with three 16 bit counters. The functions of the counter

(Input, Gate and Output) are brought out to those pins which are used for bus power access on the PCI-DIO24 and PCI-DIO24H. The PCI-DIO24H/CTR3 uses 8 I/O addresses. The lower four are occupied by the 82C55 digital I/O chip emulation and the upper four are occupied by the 82C54 counter timer chip.

This manual provides information on programming the 82C55 in mode 0. Those wishing to use the 82C55 in modes 1 or 2, or who wish to program the 82C54 counter on the PCI-DIO24H/CTR3, must procure a data book from Intel Corporation Literature Department.

All these products are supported by Universal Library programming library. As an owner of this product, you are entitled to the latest revision of the manual and software. Just call with your current revision numbers handy, and request an update be sent to you.

1

2 QUICK START & INSTALLATION

The installation and operation of all three of the PCI-DIO24 series boards is very similar. Throughout this manual we use PCI-DIO24 as a generic designation for the

PCI-DIO24, PCI-DIO24H, PCI-DIO24H/CTR3. When required due to the differences in the boards, the specific board name is used.

The PCI-DIO24 boards are easy to use. This quick start procedure will help you quickly and easily setup, install and test your board. We assume you already know how to open the PC and install expansion boards. If you are unfamiliar or uncomfortable with board installation, please refer to your computer’s documentation.

2.1 WINDOWS 95, 98 & NT

The PCI-DIO24 board is completely plug and play. Simply follow the steps shown below to install your PCI-DIO24 hardware

1. Turn your computer off, unplug it, open it up and insert the PCI-DIO24 into any available PCI slot.

2. Close your computer up, plug it back in and turn it on.

3. Windows 95 will automatically detect the board as it starts up. If the board’s configuration file is already on the system, it will load without user interaction. If the configuration file is not detected, you will be prompted to insert the disk containing it.

The required file is on the InstaCal disk or CD you received with your board. The required file(s) will then be automatically loaded and the PCI board will appear in the

Device Manager under DAS components.

4. Insert the InstaCal disk or CD (if it’s not already in an appropriate drive) and run the SETUP.EXE program.

You will then be prompted for additional information. Follow the instructions and if possible accept the defaults. If this is your first installation, we urge you to accept the defaults. It will be easier to assist you in the event of trouble with default settings.

If you have purchased the Universal Library programmers library, the SETUP.EXE

program will install all the software required to run the PCI-DIO24 as well as UniversalLibrary programming language support. Please be sure to select the 32-bit version of the library when prompted.

When you have completed this part of the installation, please proceed to section “2.3,

Run InstaCal”.

2

Logic Levels

Input low voltage

Input high voltage

Output low voltage

Output high voltage

0.8V max

2.0V min

0.4V max

3.0V min

Power consumption

+5V Operating 635 mA typical, 990 mA max

Environmental

Operating temperature range

Storage temperature range

Humidity

0 to 50°C

-20 to 70°C

0 to 90% non-condensing

19

6.3 PCI-DIO24H/CTR3

Digital Input / Output

Digital Type

Output:

Interrupts

Input:

Configuration

Number of channels

Output High

Output Low

Input High

Input Low

Power-up / reset state

Interrupt enable

Interrupt sources

8255 emulation, Mode 0

74S244

74LS373

2 banks of 8, 2 banks of 4, programmable by bank as input or output

24 I/O

2.4 volts min @ -15mA

0.5 volts max @ 64 mA

2.0 volts min, 7 volts absolute max

0.8 volts max, -0.5 volts absolute min

Input mode (high impedance)

INTA# - mapped to IRQn via PCI BIOS at boot-time

External source - active low and programmable through PCI9050-1.

External source, polarity programmable through PCI9050-1; 1 = active high,

0 = active low

Counter section

Counter type

Configuration

82C54

3 down counters per 82C54, 16 bits each

82C54A:

Counter 0 - User counter.

Source: Available at user connector.

Gate: Available at user connector.

Output: Available at user connector.

Counter 1 - User counter.

Source: Available at user connector.

Gate: Available at user connector.

Output: Available at user connector.

Counter 2 - User counter.

Source: Available at user connector.

Gate: Available at user connector.

Output: Available at user connector.

Clock input frequency

High pulse width (clock input)

Low pulse width (clock input)

Gate width high

Gate width low

18

10Mhz max

30ns min

50ns min

50ns min

50ns min

2.2 DOS and/or WINDOWS 3.1

Most users are now installing PCI Bus boards in systems with 32-bit operating systems (e.g. Windows 95, 98 or NT). The PCI-DIO24, PCI-DIO24H and

PCI-DIO24H/CTR3 are not currently supplied with the 16-bit drivers required to run under DOS or Windows 3.x.

Please contact us if your application is running under DOS or Windows 3.x.

2.3 RUN InstaCAL

Prior to starting InstaCAL, reboot your computer so the various changes made to your start up files are active.

From Win95, use “Start: Run” , type instacal at the prompt and click OK.

InstaCal is the Installation, Calibration and Test software supplied with all Computer-

Boards I/O boards. If you have a PCI board installed in a PCI slot in your computer, the first message InstaCal displays is

PCI BoardType Detected

A PCI-DIO24 has been detected in Slot #

A dialog box opens asking you if you wish to install the software configuration for a

PCI-DIO24. You should choose yes.

InstaCAL will then perform the remainder of the initial installation of your PCI board selecting addresses and other system resource settings which are not your choice to select. In PCI systems, these settings are assigned by the plug & play system soft- ware.

InstaCal help is available by pressing the F1 function key. Most of InstaCal is intuitively obvious and for that reason there is no user's manual for InstaCal.

The PCI-DIO24 and PCI-DIO24H require four standard I/O addresses as well as the addresses required for Plug-and-Play operation. The PCI-DIO24H/CTR3 requires four additional addresses for the 8254 counter, or a total of eight. The addresses are allocated by the PCI plug & play procedure and may not be modified. If you have installed ISA bus boards in the past you are familiar with the need to select a base address and interrupt level. On PCI systems this is not of concern to you. It is not up to you to select a base address and ensure that it does not conflict with an installed port. In PCI systems, the operating software and installation software do the selection and checking for you.

3

InstaCal selects and sets the I/O address from the range of available addresses. The address and other information is stored in the configuration file CB.CFG. This file is accessed by the Universal Library for programmers. Note also that the Universal

Library is the I/O board interface for packaged applications such as Labtech Notebook and HP-VEE, therefore the InstaCal settings must be made in order for these and other applications to run.

The board’s base address is also stored in the system software. Once InstaCal installation software is run, other programming methods such as direct IN and OUT statements can write and read the PCI-DIO24 registers by reference to the base address and the offset from base address corresponding to the chart of registers located elsewhere in this manual.

But a word of warning is in order here. Direct writes to the addresses simply by reference to the base address of the PCI-DIO24 I/O registers is not advised. Since the addresses assigned by the PCI plug & play software are not under your control, there is no way to guarantee that your program will run in any other computer.

Not only that, but if you install another PCI board in a computer after the PCI-DIO24 addresses have been assigned, those addresses may be moved by the plug & play software when the second board is installed. It is best to use a library such as Universal

Library or a program such as HP-VEE to make measurements with your PCI-DIO24.

2.4 TESTING THE INSTALLATION

After you have run the install program and set your base address with InstaCal, it is time to test the installation. The following section describes the InstaCal procedure to test that your board is properly installed.

With InstaCal running, choose the TEST item on the main menu. a. Select the board you just installed b. Select Internal Test c. The internal control registers of the board will then be tested. If this test

is successful, your board is installed correctly. d. If the Internal Test is completed successfully, you may want to check

that the I/O pins are working correctly. To check this select

External Test and follow the instruction provided.

6.2 PCI-DIO24H

Digital Input / Output

Digital Type

Output:

Input:

Configuration

Number of channels

Output High

Output Low

Input High

Input Low

Power-up / reset state

Interrupts

Interrupt enable

Interrupt sources

Power consumption

+5V Operating

+12V and -12V

Environmental

Operating temperature range

Storage temperature range

Humidity

8255 emulation

74S244

74LS373

2 banks of 8, 2 banks of 4, programmable by bank as input or output

24 I/O

2.4 volts min @ -15mA

0.5 volts max @ 64 mA

2.0 volts min, 7 volts absolute max

0.8 volts max, -0.5 volts absolute min

Input mode (high impedance)

INTA# - mapped to IRQn via PCI

BIOS at boot-time

External source - polarity programmable through PCI9050-1.

External source, polarity programmable through PCI9050-1; 1 = active high, 0 = active low

625 mA typical, 960 mA max

Not used, but provided to the user at the I/O connector

0 to 50°C

-20 to 70°C

0 to 90% non-condensing

4 17

6 SPECIFICATIONS 3 I/O CONNECTIONS

6.1 PCI-DIO24

Digital Input / Output

Digital Type (Digital I/O connector)

Configuration

Number of channels

Output High

Output Low

Input High

Input Low

Power-up / reset state

Interrupts

Interrupt enable

Interrupt sources

Power consumption

+5V Operating

+12V and -12V

82C55

2 banks of 8, 2 banks of 4, programmable by bank as input or output

24 I/O

3.7 volts min @ -2.5mA

0.4 volts max @ 2.5mA

2.2 volts min, VCC + .3 volts absolute max

0.8 volts max, -0.3 volts absolute min

Input mode (high impedance)

INTA# - mapped to IRQn via PCI

BIOS at boot-time

External source - polarity programmable through PCI9050-1.

External source, polarity programmable through PCI9050-1; 1 = active high, 0 = active low

240 typical, 350 max

Not used, but provided to the user at the I/O connector

Environmental

Operating temperature range

Storage temperature range

Humidity

0 to 50 °C

-20 to 70 °C

0 to 90% non-condensing

16

3.1 CABLES AND SCREW TERMINAL BOARDS

The PCI-DIO24 connector is accessible through the computer’s expansion bracket.

The connector is a standard 37 pin male connector. The I/O connections can be brought out to easy to use screw terminals by purchasing a CFF37-series cable and a

CIO-MINI37 screw terminal accessory board.

A mating female connector may be purchased from Radio Shack and most other electronic supply outlets.

3.2 CONNECTOR DIAGRAM - PCI-DI O24, -24H &

-

24H/CTR3

The PCI-DIO24 I/O connector is a 37 pin D type connector accessible from the rear of the PC through the expansion backplate. The signals available are direct connections to an 82C55 digital I/O chip as well as the PC’s internal power supplies. The pin-out is identical to the CIO-DIO24 except that -5VDC is not brought out.

The PCI-DIO24H/CTR3 adds the signals for an 82C55 counter chip in place of the PC power connections.

The connector accepts female 37 D type connectors, such as those on the

C37FF-2, 2 foot cable.

24/C TR 3 24 & 24H

C L K 0

G AT E 0

O U T 0

G N D 1 9

+ 5V 1 8

G N D 1 7

C L K 1

G AT E 1

O U T 1

C L K 2

G AT E 2

O U T 2

+ 1 2V 16

G N D 1 5

-12 V 1 4

G N D 1 3

N C 1 2

G N D 11

P O R T B 0 1 0

P O R T B 1 9

P O R T B 2 8

P O R T B 3 7

P O R T B 4 6

P O R T B 5 5

P O R T B 6 4

P O R T B 7 3

IR E N A B L E 2

IR IN P U T 1

If frequent changes to signal connections or signal conditioning is required, please refer to the information on the PCI-MINI37 or PCI-

SPADE50 screw terminal boards.

N C - N O C O N N EC TIO N

3 7 P O R T A 0

3 6 P O R T A 1

3 5 P O R T A 2

3 4 P O R T A 3

3 3 P O R T A 4

3 2 P O R T A 5

3 1 P O R T A 6

3 0 P O R T A 7

2 9 P O R T C 0

2 8 P O R T C 1

2 7 P O R T C 2

2 6 P O R T C 3

2 5 P O R T C 4

2 4 P O R T C 5

2 3 P O R T C 6

2 2 P O R T C 7

2 1 G N D

2 0 + 5 V

5

3.3 SIGNAL CONNECTION CONSIDERATIONS

All the digital outputs and inputs on the PCI-DIO24 as well as the counter/timer signals of the PCI-DIO24H/CTR3 connector are CMOS TTL. The PCI-DIO24H signals are buffered (high output drive) TTL. TTL is an electronics industry term, short for

Transistor Transistor Logic, which describes a standard for digital signals which are either at 0V or 5V.

The voltages and currents associated with external devices range from less than a hundred mA at a few volts for a small flash light bulb to 50 Amps at 220 volts for a large electric range. Attempting to connect either of these devices directly to the PCI-

DIO24 could damage the I/O chip.

We offer a wide variety of digital signal conditioning products that provide an ideal interface between high voltage or high current real world signals and PCI-DIO24 family. If you are trying to control or monitor non-TTL level signals with your board, we highly recommend you look in our catalog or on our web site for the following products.

CIO-ERB series, electromechanical relay output boards

CIO-SERB series, 10A electromechanical relay output boards

SSR-RACK series solid state I/O module racks

DR-Series, DIN rail mountable solid state I/O modules.

In addition to voltage and load matching, digital signal sources often need to be debounced. A complete discussion of digital interfacing will be found in the section on

Interface Electronics in this manual.

IMPORTANT NOTE

The 82C55 digital I/O chip initializes all ports as inputs on power up and reset. A TTL input is a high impedance input. If you connect another TTL input device to the 82C55 it will probably be turned ON every time the 82C55 is reset, or, it might be turned

OFF instead. Remember, the 82C55 which is reset is in INPUT mode.

To safeguard against unwanted signal levels, all devices being controlled by an

82C55 should be tied low (or high, as required) by a 2.2K ohm resistor.

You will find positions for pull up and pull down resistor packs on your PCI-DIO24 series board. To implement these, please turn to the application note on pull up/down resistors.

6

The two groups of ports, group A and group B, may be independently programmed in one of several modes. The most commonly used mode is mode 0, input / output mode. The codes for programming the 82C55 in this mode are shown below. D7 is always 1 and D6, D5 & D2 are always 0.

D3

0

0

1

0

0

1

1

1

0

0

1

0

0

1

1

1

D4

1

1

1

1

1

1

1

1

0

0

0

0

0

0

0

0

D1

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

D0

0

1

0

0

1

1

0

1

HEX

80

81

82

83

88

89

8A

8B

DEC

128

129

130

131

136

137

138

139

A

0

1

0

1

0

0

1

90

91

92

93

98

99

9A

144

145

146

147

152

153

154

IN

IN

IN

IN

IN

IN

IN

1 9B 155 IN

8255 Mode 0 configurations

(D7=1, D6=D5=D2=0)

OUT

OUT

OUT

OUT

OUT

OUT

OUT

OUT

CU CL

OUT

IN

OUT

IN

OUT

IN

OUT

IN

OUT

IN

OUT

IN

OUT

IN

OUT

IN

B

OUT

OUT

IN

IN

OUT

OUT

IN

IN

OUT

OUT

IN

IN

OUT

OUT

IN

IN

OUT

OUT

OUT

OUT

IN

IN

IN

IN

OUT

OUT

OUT

OUT

IN

IN

IN

IN

5.5 82C54 COUNTER CHIP

The 82C54 counter chip is quite complex. The data sheet for the part contains programming information, input and output timing diagrams and interfacing specifications.

We are sorry, but it is beyond the scope of this manual to reproduce the information, all of which is contained in the chip manufacturers data book. For that information check out Intel’s web site at www.intel.com. A variety of information is available and can be found by “searching” on keyword 8254.

15

5.4 INPUT PORTS

In 82C55 mode 0 configuration, ports configured for input read the state of the input lines at the moment the read is executed, transitions are not latched.

For information on modes 1 (strobed I/O) and 2 (bi-directional strobed I/O), you will need to acquire an Intel or AMD data book and see the 82C55 data sheet.

7

MS

6

M3

5

M2

Group A

4

A

3

CU

2

M1

1

B

Group B

0

CL

The 82C55 may be programmed to operate in Input/ Output (mode 0), Strobed Input/

Output (mode 1) or Bi-Directional Bus (mode 2).

NOTE!

Only 82C55 mode 0 is available on the PCI-DIO24H &

24H/CTR3.

Included here is information on programming the 82C55 in mode 0. Those wishing to use the 82C55 in modes 1 or 2, or who wish to program the 82C54 counter on the

PCI-DIO24H/CTR3, must procure a data book from Intel Corporation Literature

Department.

When the PC is powered up or RESET, the 82C55 is reset. This places all 24 lines in

Input mode and no further programming is needed to use the 24 lines as TTL inputs.

To program the 82C55 for other modes, the following control code byte must be assembled into an 8 bit byte.

MS = Mode Set. 1 = mode set active

M3 M2

0

0

1

0

1

X

Mode 0

Mode 1

Mode 2

Group A Function

Input/Output

Strobed Input/Output

Bi-Directional Bus

A B CL

1

0

1

0

1

0

M1 = 0 is mode 0 for group B.

M1 = 1 is mode 1 for group B.

CH

1

0

Independent Function

Input

Output

Input / Output

Strobed Input / Output

The Ports A, B, C High and C Low may be independently programmed for input or output.

14

3.4 COUNTER CONNECTIONS & SETUP

3.4.1 1 or 10 MHz Time Base

The user has the option of setting the onboard crystal time base to 1 MHz or 10 MHz.

This selection is made during the InstaCAL board setup. The time base defaults to 10

MHz.

3.4.2 Onboard counter interconnect jumpers

For the convenience of those users who wish to make (pseudo) permanent connections among the counter channels, the board has been configured with three jumper locations. When installed, these jumpers can make the connections shown below:

Please note, that all of these connections can be made via the standard 37-Pin I/O connector, and the jumpers have been included as a convenience only.

Jumper positions are provided to connect:

• Timebase output and Counter 0 Clk

• Counter 0 output and Counter 1 Clk

• Counter 1 output and Counter 2 Clk

7

4 SOFTWARE

Due to the complex and somewhat unpredictable nature of WINDOWS 95 control of

Plug-and-Play addresses, we highly recommend that users take advantage of our Universal Library package's easy to use programming interfaces. However, if you are an experienced programmer, and wish to read and write directly to the board, we have provided a detailed register map in the next chapter.

4.1 Universal Library

The UniversalLibrary provides complete access to the DIO24 functions from a range of programming languages. If you are planning to write programs, or would like to run the example programs for Visual Basic or any other language, please turn now to the UniversalLibrary manual.

VIX Components is a set of programming tools based on a DLL interface to Windows languages. A set of VBX, OCX or ActiveX interfaces allows point and click construction of graphical displays, analysis and control structures. Please see the catalog for a complete description of the package.

4.2 Packaged Applications Programs

Most packaged application programs, such as DAS Wizard, Labtech Notebook and

HP-VEE have drivers for the DIO24 series. If the package you own does not appear to have drivers for the boards, please fax or e-mail the package name and the revision number from the install disks. We will research the package for you and advise how to utilize the PCI-DIO24 boards with the driver available.

Some application drivers are included with the Universal Library package, but not with the Application package. If you have purchased an application package directly from the software vendor, you may need to purchase our Universal Library and drivers. Please contact us for more information on this topic.

Port C Data

Base Address +2

7

C7

CH3

Pin 22

6

C6

CH2

Pin 23

5

C5

CH1

Pin 24

4

C4

CH0

Pin 25

3

C3

CL3

Pin 26

2

C2

CL2

Pin 27

1

C1

CL1

Pin 28

0

C0

CL0

Pin 29

Port C may be used as one 8 bit port of either input or output, or it may be split into two 4 bit ports which may be independently input or output. The notation for the upper 4 bit port is PCH3 - PCH0, and for the lower, PCL3 - PCL0.

Although it may be split, every read and write to port C carries 8 bits of data so unwanted information must be ANDed out of reads, and writes must be ORed with the current status of the other port.

5.3 OUTPUT PORTS

In 82C55 mode 0 configuration, ports configured for output hold the output data written to them. This output byte may be read back by reading a port configured for output.

8 13

The registers and their function are summarized in the following table. A more detailed description of each register is included in subsequent sections. Within each register are 8 bits which may constitute a byte of data or 8 individual bit set/read functions.

ADDRESS

BASE +0

BASE +1

BASE +2

BASE +3

BASE +4

BASE +5

BASE +6

BASE +7

READ FUNCTION

Port A Input of 82C55

Port B Input

Port C input

None. No read back on 82C55.

PCI-DIO24H/CTR3 ADDITIONAL

REGISTERS

Counter 0

Counter 1

Counter 2

None

WRITE FUNCTION

Port A Output

Port B Output

Port C Output

Configure 82C55

Counter 0 Load

Counter 1 Load

Counter 2 Load

Counter Control

5.2 82C55 DIGITAL I/O REGISTERS

Port A Data

Base Address +0

7

A7

Pin 30

6

A6

Pin 31

5

A5

Pin 32

4

A4

Pin 33

3

A3

Pin 34

2

A2

Pin 35

1

A1

Pin 36

0

A0

Pin 37

Port B Data

Base Address +1

7

B7

Pin 3

6

B6

Pin 4

5

B5

Pin 5

4

B4

Pin 6

3

B3

Pin 7

2

B2

Pin 8

1

B1

Pin 9

0

B0

Pin 10

Ports A & B may be programmed as input or output. Each is written to and read from in Bytes, although for control and monitoring purposes the individual bits are more interesting.

Bit set/reset and bit read functions require that unwanted bits be masked out of reads and ORed into writes.

5 I/O REGISTER MAPS

The Table below shows the I/O register map of the PCI-DIO24, DIO24H and

DIO24H/CTR3. Any differences between versions of the boards are noted. Sections

5.1 through 5.6 provide additional information on each of these addresses and their functions.

REGISTER

BADR1+4C h

BADR1+50 h

READ FUNCTION

Interrupt Status

User I/O Status (/CTR3 board only)

WRITE FUNCTION

Interrupt Control

User I/O Control (/CTR3 board only

BADR2 + 0

BADR2 + 1

BADR2 + 2

BADR2 + 3

BADR2 + 4

BADR2 + 5

BADR2 + 6

BADR2 + 7

8255 REGISTERS

(for all boards)

Input Port A Data

Input Port B Data

Input Port C Data

Control register readback

Output Port A Data

Output Port B Data

Output Port C Data

Control Register

8254 Counter REGISTERS

(For /CTR3 boards only)

Counter 0 Data

Counter 1 Data

Counter 2 Data

No Readback

Counter 0 Data

Counter 1 Data

Counter 2 Data

Control Register

12 9

5.1 BOARD CONTROL REGISTERS

5.1.1 INTERRUPT STATUS/CONTROL

BADR1 + 4C (hex)

READ/WRITE

31:8 x

7 x

6

PCIINT

5 x

4 x

3 x

2

INT

1

INT-

POL

0

INTE

This register is 32-bits in length. Please note that the remainder of the register's bits have specific control functions. If you write the Interrupt Status register, please be sure to read the current status, change only the desired bits and then write the new status word.

INTE is the Interrupt Enable:

0 = disabled,

1 = enabled (default).

INTPOL is the Interrupt Polarity:

0 = active low (default),

1 = active high.

INT is the Interrupt Status:

0 = interrupt is not active,

1 = interrupt is active.

PCIINT is the PCI Interrupt Enable:

0 = disabled,

1 = enabled (default).

5.1.2 USER I/O STATUS/CONTROL (PCI-DIO24H/CTR3 only)

BADR1 + 50 (hex)

READ/WRITE

31:8 7 x x

6 x

5 x

4 x

3 x

2

OUT0

1

1

0

0

Though the onboard crystal oscillator output is not brought to the I/O connector, it may be connected to the clock input of counter 0 by installing a jumper on the board

(between OSC and CLK0 on P2). The on board oscillator may be set to 10 MHz or

1 MHz. The OUT0 bit selects which frequency is brought to the jumper pin.

OUT0 = 0, input = 10Mhz

OUT0 = 1, input = 1Mhz.

Bit 0 and one should remain 0 and 1 respectively.

This register is 32-bits in length. Please note that the remainder of the register's bits have specific control functions. If you write the User I/O Status/Control register, please be sure to read the current status, change only the desired bits and then write the new status word.

5.1 82C55 CONTROL & DATA REGISTERS

Each PCI-DIO24 is composed of an 82C55 parallel I/O chip (or a TTL implementation of 8255 mode 0). Each board uses 3 data and one control register and occupies 4 consecutive I/O locations. The PCI-DIO24H/CTR3 uses 4 additional I/O registers to read and write to the 82C54.

The PCI-DIO24 series boards are easy to program with direct I/O register reads and writes. A tutorial describing how to go about register I/O is beyond the scope of this manual. However, it will be covered in most Introduction To Programming books, available from a bookstore.

As alternatives to register level programming, the PCI-DIO24 series of boards is fully supported by optional Universal Library software as well as most high level data acquisition and control application packages (e.g. HP Vee or Labtech Notebook).

10 11

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Related manuals

Download PDF

advertisement