INTRODUCTION The PCI bus 8255 adapter is a 32 bits PCI bus adapter with Plug and Play (PnP) features, it is a programmable I/O interface for PC/486, Pentium or compatible computers. The PnP features let hardware configuration for IRQ and I/O address is detected by BIOS automatically, you don¡¦t need set switch and jumper. The PCI bus 8255
adapter provides total 6 digital I/O ports, each I/O port contains 8
I/O lines, and can be set either input or output by the
user¡¦s program. The signal assignments of PCI bus 8255
adapter is designed as a standard configurations, so that it can be
used to connect to the 8255 terminator board for several applications.
The features of the PCI bus 8255 adapter are:
*32 bits PCI bus with Plug and Play (PnP) features. *Programmable I/O control functions. *Up to 48 I/O lines. *Maximum of 10 MHZ counter rate. *Support several operating modes that are programmable. *Provides DII device
driver for PnP features.
UNPACKING INFORMATION Check that your PCI bus 8255 package includes the following items:
*PCI bus 8255 adapter. *Demo Program. *Data Capture Software Manual with CD. *8255 terminator board (option). *Two expansion flat cables (option). *DII device driver. *User manual. *Warranty form.
HARDWARE INSTALLATION Your PCI bus 8255 adapter is designed to be inserted in any available PCI slot in your PC/486, Pentium or compatibles. In order to gain access to the expansion slots, follow the steps listed below:
1.Turn off all power to your computer and all peripheral devices before installing your 8255 adapter. 2.Remove the cover of the computer. 3.Insert the 8255 adapter into any available PCI slot. Make sure the adapter is firmly seated in the chosen slot. 4.Replace the cover of the computer. 5.Connects the expansion cables. 6.Turn on the power
of your computer, the PnP features will recognize the 8255 adapter.
HARDWARE CONFIGURATION 4.1 I/O Port Address
Base + 0 : Port 1A input/output buffer. Base + 1 : Port 1B input/output buffer. Base + 2 : Port 1C input/output buffer. Base + 3 : Port 1 control register. Base + 4 : Port 2A input/output buffer. Base + 5 : Port 2B input/output buffer. Base + 6 : Port 2C input/output buffer. Base + 7 : Port 2
control register. Base + 8 : Counter 0 input/output buffer. Base + 9 : Counter 1 input/output buffer. Base + A : Counter 2 input/output buffer. Base + B : Counter control register.
4.2 DIP Switch The switch is used to identify card number, default setting is card 15. There are two methods to set the card number: a. PnP mode b.Manual mode
4.3 Pin Assignments
1. Pin
Assignments for CN1 Connector
.2. Pin Assignments for CN2 Connector
3. Pin Assignments for IDC40 Female TO DSUB-50 Female Cable IDC40 Female TO DSUB-50 Female Cable Pin Assignment DII DEVICE DRIVER
To install DII (Decision Industrial Interface) for Windows 95 and Windows NT, you may start the installation by running SETUP.EXE supplied on this distribution CD. During installation, the Setup application will install an icon into a new program group in your start menu (default name: "Decision Industrial Interface"). After DII is installed, please select ¡§Start¡¨ menu, then ¡§Settings¡¨, then ¡§Control Panel¡¨, then ¡§Add New Hardware¡¨ menu, then select PCI 8255 card on the ¡§Industrial I/O Devices¡¨ hardware group. The DII provides
DLL, OCX, ... etc. components for further programming. For more
details, please refer DII manual.
100 REM 8255 I/O CARD TESTING PROGRAM 110 SCREEN 0,0,0: WIDTH 80,25: KEY OFF: CLS 120 LOCATE 10,10: PRINT "8255 I/O CARD TESTING" 130 LOCATE 12,10: PRINT "TWO 8255 PORT A,B,C OUTPUT SQUARE WAVE" 140 LOCATE 14,10: PRINT "8253 COUNTER 0 DIVIDE BY 2" 150 LOCATE 16,10: PRINT " COUNTER 1 DIVIDE BY 50" 160 LOCATE 18,10: PRINT " COUNTER 2 DIVIDE BY 100" 250 REM 8253 TESTING 255 PORT = &H1B0 260 OUT PORT+11,&H36 270 OUT PORT+11,&H76 280 OUT PORT+11,&HB6 290 OUT PORT+8,&H2: OUT PORT+8,&H0 300 OUT PORT+9,&H32: OUT PORT+9,&H0 310 OUT PORT+10,&H64: OUT PORT+10,&H0 320 PORT=&H1B0 330 OUT PORT+3,&H80 340 A=0: GOSUB 500 345 FOR K= 0 TO 1000: NEXT K 350 A=&HFF: GOSUB 500 360 PORT=PORT+4 370 OUT PORT+3,&H80 380 A=0: GOSUB 500 385 FOR K=0 TO 1000: NEXT K 390 A=&HFF: GOSUB 500 400 GOTO 320 500 FOR I=0 TO 2 510 OUT PORT+I,A 520 NEXT I 530 RETURN
6.2 PASCAL Programming
program diagnostic(input, output); uses Crt; var a, i, test : integer; procedure subtest; begin for i := 0 to 2 do port[test+i] := a; end; begin { 8255 I/O Card Testing Program } clrscr; gotoxy(10, 10); writeln('8255 I/O CARD TESTING'); gotoxy(10, 12); writeln('TWO 8255 PORT A,B,C OUTPUT SQUARE WAVE'); gotoxy(10, 14); writeln('8253 COUNTER 0 DIVIDE BY 2'); gotoxy(10, 16); writeln(' COUNTER 1 DIVIDE BY 50'); gotoxy(10, 18); writeln(' COUNTER 2 DIVIDE BY 100'); { 8253 Testing } test := $1B0; port[test+11] := $36; port[test+11] := $76; port[test+11] := $B6; port[test+ 8] := $02; port[test+ 8] := $0; port[test+ 9] := $32; port[test+ 9] := $0; port[test+10] := $64; port[test+10] := $0; repeat test := $1B0; port[test+3] := $80; a := 0; subtest; for i := 0 to 1000 do; a := $ff; subtest; test := test + 4; port[test+3] := $80; a := 0; subtest; for i := 0 to 1000 do; a := $ff; subtest until keypressed; end.
6.3 C Programming
#include <stdio.h> #include <conio.h> int test,i,a; void subtest() { for(i=0;i<=2;i++) outportb(test+i,a); } main() { clrscr(); gotoxy(10,10); puts("8255 I/O CARD TESTING"); gotoxy(10,12); puts("TWO 8255 PORT A,B,C OUTPUT SQUARE WAVE"); gotoxy(10,14); puts("8253 COUNTER 0 DIVIDE BY 2"); gotoxy(10,16); puts("8253 COUNTER 1 DIVIDE BY 50"); gotoxy(10,18); puts("8253 COUNTER 2 DIVIDE BY 100");
test = 0x1b0; outportb(test+11,0x36); outportb(test+11,0x76); outportb(test+11,0xb6); outportb(test+ 8,0x02); outportb(test+ 8,0x00); outportb(test+ 9,0x32); outportb(test+ 9,0x00); outportb(test+10,0x64); outportb(test+10,0x00);
do { test = 0x1b0; outportb(test+3,0x80); a = 0; subtest(); for(i=0;i<=1000;i++); a = 0xff; subtest(); } while(!kbhit()); }
APPENDIX A TERMINATOR BOARD
The 8255 terminator board provides expansion signal connection for convenience purpose. When power control on the normal condition, the LED will light. To connect 8255 adapter to terminator board, please plug in CN1 connector (at 8255 adapter) to J1 (at terminator board). The similar method will be used to connect CN2 to J2. The signal assignment is shown in the follows. 1. TB1
2 TB2
4 TB4
PCI 8255/8254 B-MODULE (DCI 2K29B0) 1. PORT A/B
2. 8254
3. Pin Assignments for CHANNEL 1 Connector
2. POWER SOURCE
3. Pin Assignments for CHANNEL 2 Connector
DCI 96022601
2.Pin Assignment of TB1 (Photo Isolator)
3.Pin Assignment of TB2 (Relay Output)
¡@ ¡@
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||