8255/8253 I/O CARD

2002/11/05

Q:I cann't control 8255 PCI Card's Timmer on Windows XP. Please comment!

I used the follwing instructions to control the Timer1:

DiiSetTimerConfig (hDevice, 0, 0x06);

DiiLoadTimer (hDevice, 0, 40000);

 

A:Please download the sample code from our Web side as follow:

http://www.pci8255.net/windows.htm

2002/11/18

Q:Have you got a document for using DecLib.Dll ? and so you've got a fantastic Name ( Casper )...

nice to meet you.

 

A:Please download the document from our Web side as follows:

http://202.39.29.29/data/Pii.zip

 

2002/11/20

Q:I use your product in a project.

I can control PCI card's I/O port on Windows XP, but I can't control that in DOS use ASM.

How to program it ?

 

A:Please download the sample code from our Web site as follows:

http://www.pci8255.net/windows.htm

 

2002/11/27

Q:Thank you for your e-mail. I appreciate your great effort to help me very much. But,

unfortunately I did not get the answer of my question.

How to determine the I/O port address of the Timer chip (8254) on this "8255-PCI Board"?

 

A:PCI is a Plug and Play system. It means the address is assigned by the BIOS at 'Power On Self

Test' time. You can not assign the I/O address. The address may change when the system reboots

again. On the other hand, you 'get' the I/O address through BIOS call. In the sample code, it

shows how to get the PCI address. The I/O address of 8254 is the address reported from BIOS

plug 8h. You may download the sample code as follows:(PCI8255-DOS-SAMPLE.ZIP)

http://www.pci8255.net/windows.htm

 

2002/11/28

Q:Thank you for your e-mail, I appreciated it very much. I understand how to get the (base) port

address of the two 8255 ports (using your utility program) as explained in Chapter-4 of the user

manual.

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.

..

My question, could you used the same program to determine the I/O port addresses of the 8254?

or you have to add codes to determine those addresses?

 

A:Yes, the I/O address of 8254 is I/O port + (8H to BH).

 

 

2002/09/09

Q:I have bought a Decision PCI 8255 card to be operated under Linux, kernel 2.4.18-4GB(Suse-Linux). Trying to use your driver I get an error, complaining a wrong kernel version and a few unresolved symbols. Can you help me?

 

A:Please link our FTP-Server to download the kernel2.4 driver for PCI 8255 card.

http://www.pci8255.net/linux.htm

 

 

2002/06/06

QPls. advise if there is a driver that works with WIN XP with the above card.

 

APlease link our web site to download the driver.

http://64.177.188.78/PCIIndustrialInterface.exe

Please use DecDio.ocx or DecLib.dll to develop.

The DecDio.ocx operated method is as same as diiocx.ocx.

 

2002/05/30

QI'm getting very confused regarding the 8255/8253 card's address. The manual quite clearly states the setting is for either 01B0H or 01F0H dependant on jumper setting. These address don't work. Please tell me which address the board actually sits at, my new customer is getting very  annoyed.

 

APlease tell us what kinds card do you have?PCI or ISA? If your device is ISA please link our web site to download the ISA8255.zip file.

http://www.pci8255.net/download document.htm

And please tell us what OS do you use? If you use VB to develop and your device is PCI card, you can use diiocx.ocx to design it. Otherwise, please tell us your software environment information.

 

2002/05/24

QI notice that the user's manual does not include any information about the 8254 timer chip that is in the PCI-8255 board. I'd like to receive the following information about the 8254-timer chip:

1- What is the I/O base address of this chip? Or where to get it?

2- Is there any utility programs to test this device? If yes, can you please send it.

3- I need schematics for this device.

 

APlease link our web site to download the latest driver for WIN2000/XP.

http://64.177.188.78/PCIIndustrialInterface.exe

The driver will make DecDio.ocx and DecLib.dll two components.

The used method of DecDio.ocx is as same as DiiOcx.ocx so you can reference the dii.pdf page81~99.

http://202.39.29.26/data/io/diipdf.zip

About test program, you will see it after installing the driver.

About schematics, we will send a manual to you. Please reference page 39.

 

2002/05/20

QPlease solve the problem of using 2  PCI 8255 boards with Windows XP, we have finally got Windows XP working after a lot of work with one board, we had to go back to previous software and use Windows 2000 drivers.

 

APlease link to our web site to download the driver.

http://64.177.188.78/PCIIndustrialInterface.exe

Please link to our web site to download the install document.

http://www.pci8255.net/download%20document.htm

 

2002/05/10

QThank for your fast response and your file PCI8255_2.2.14,  While we install the warning massage " Kernel_module version mismatch disa8255.o was compiled for Kernel version 2.2.14-3.0, while this kernel is version 2.2.17-14" still here.

 However   dpci82550    size  155.0         

                 dpci82551    size  155.1

                 dpci82552    size  155.2

                 dpci82553    size  155.3

created at /dev

but when we run     test.c

                               bash : /act: is a directory

                               bash : test.c :  line 16 : syntax error

                                         near unexpected token  'sprintf (buf," /dev/%s0\0" , DEVICE_NAME)'

                               bash : test.c :  line 16 :  'sprintf (buf," /dev/%s0\0" , DEVICE_NAME)'

We are using Kernel

                      Red Head 7.0

                      CLE 1.0

 

APlease link to our web site to download the driver.

http://www.pci8255.net/linux.htm

The driver can fit on kernel 2.2.17.

Please re-extract the “dpci8255dist.tgz” then execute it to follow “Readme.txt”.

Please add a newline at last in dpci8255lib.c then save it.

Please compile the “test.c”.

 

2002/05/08

QDear Casper

I need test- or sample-software for the

PCIIndustrialinterface.exe

Inside the instruction is an information, but no file. I need for the PCI-8255 card!

 

APlease go to “C:\Program Files\Decision\PCI Industrial Interface” when you have installed the “PCIIndustrialInterface.exe”. You will see the “Test8255” folder. The test program is in the folder.

 

2002/05/06

QHello Sir,  i am a Manuel Rodighiero friend. You have write to you a mail about the object. I have some question about the DOS OS and APCI8255.

I have set  DIP switch :1 On 2 Off 3 Off 4 Off

I have format a floppy disk with a system file and a 2 file 8255set.exe and pci8255.exe and i restart the pc with this floppy.

The result is:

a:\>8255set 0200

New address : 200

and this is correct.

a:\> pci8255

start the test program, option 1,  but the result is :

loop : 1  testing pin :0 output : 000001  input: 000002  Correct : 800000

Error

Can you help me , please ?

thanks a lots and goodbye

 

APlease connect the loopback when you test the PCI 8255 card.

 

2002/05/03

QWe have tried to use th a8255pci card with Dos program ( the one written in basic on the manual)  but it does nothing. Have you some usefull suggestions? Have we to set the card address? How? (Now the switch is 1-OFF 2-OFF 3-OFF 4-OFF and we think the correct address would be &H1A0, is TRUE?).

Have you a test program that show me if the card works correctly? (If possible turning on and off the leds?) thank you tery much for your support.

1 other thing......Are you working for driver of Apci8255 under XP with Delphi(6)?

 

AWe will check the basic program on our manual.

Please use the attached file to set I/O address of PCI 8255 card.

About switch 1, its function is explained as follow:

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 1. There are two methods to set the card number:

a.  PnP mode

Just plug in PCI bus adapter into PCI slot, the PCI BIOS will allocate I/O address to each adapter automatically and assign card number start from 0 to each adapter. However, if you plug in more than one adapter, please set whole adapters to card number 1 (default setting), then use software tools to distinguish port id.

b.  manual mode

Set card number by card identifier switch, the PCI BIOS will assign pre-allocated I/O address to each adapter. Please set different card number to each adapter (do not duplicate card number setting).

The card number starts from 0 to 15.

In additional, please link to our web site to download the PCI 8255 XP driver.

http://64.177.188.78/PCIIndustrialInterface.exe

Please follow below way to install the PCI 8255 card:

Step1. Please uninstall the old driver of the PCI 8255 card.

Step2. Please leave all of PCI 8255 Cards then turn off your PC.

Step3. Please turn on your PC then install the new driver.

Step4. Please turn off the PC then insert all of PCI 8255 cards.

Step5. Please turn on the PC then will install all of PCI 825 cards by auto.

If you want to develop by Delphi, you can use the declib.dll.

 

2002/05/03

Qwe have connected the PCI 8255 Card with an external 1000 Hz clock on
CLK0,CLK1,CLK2.
We use the functions SetConfigTimer and LoadTimer in order to have two
frequencies of 100Hz (ClockRate 10).
We see that the frequencies OUT1 and OUT2 are correct for only few seconds
than the signal always high.
With the function GetTimer we see that when the frequencies goes wrong, the
counter goes to 65535 and begin
to count down.

 

APlease don’t use external clock.

Please use the 8254 on the PCI 8255 card when we have modified the new driver.

Please link to our web site to download the latest driver.

http://64.177.188.78/PCIIndustrialInterface.exe

 

2002/05/03

QWe did get the XP working with a previous version you have send, only for one board.

 

APlease link to our web site to download the driver.

http://64.177.188.78/PCIIndustrialInterface.exe

Please follow below way to install the PCI 8255 card:

Step1. Please uninstall the old driver of the PCI 8255 card.

Step2. Please leave all of PCI 8255 Cards then turn off your PC.

Step3. Please turn on your PC then install the new driver.

Step4. Please turn off the PC then insert all of PCI 8255 cards.

Step5. Please turn on the PC then will install all of PCI 825 cards by auto.

 

2002/05/02

QSir, the card don´t suport the DMA access, but, the end of convertion,  how can I get it?

 

AIt is the end of convert when your PC has finished after every loop.

 

2002/04/26

QWe have some problems to use the PCI 8255 Card. We are not able to generate a frequency with 8254. Mr Karsten Huster (nt-Ware Germany) gave me the latest version 1.8.12 of software Dii.There is a particular configuration we have to make to generate the frequency? If we try to generate a clock with this code in Visual Basic 6.0 ''

 

    If (diiDevice.SetTimerConfig(0,&H6)) Then
        If (diiDevice.LoadTimer(0, CInt(tbTimerClockRate.Text))) Then
                lbFailureLoadingTimer.Visible = False
                Exit Sub
        End If
   End If

We check the frequency on the Pin 10 of CN1 Connector (OUT0), we can't see anything Can you give us some suggestings?

 

AThe problem is from the DII, so we need to modify it.

We will send it as soon as when we have modified it.

 

2002/04/26

QI purchased a PCI 8255 card. I am trying to get my program to communicate with it. I am using DOS as my operating system. I cannot find the card. I have tried the address given in the manual: 0x0300 (300 hex). No luck. All four of the little switches are in the position they were set to when I received the card, that is, all "OFF."

Can you tell me what is the base address of the card with all switches "OFF" ?

 

APlease see the attached file it has a setup-test document file and a setup executed file and a test program.

Please follow the setup-test document to setup and test it.

In additionally, the switch S1 is to set card number. Please see below detail information

DIP Switch

ON 1  2  3  4 

    The switch is used to identify card number, default setting is card 1. There are two methods to set the card number:

   a.  PnP mode

Just plug in PCI bus adapter into PCI slot, the PCI BIOS will allocate I/O address to each adapter automatically and assign card number start from 0 to each adapter. However, if you plug in more than one adapter, please set whole adapters to card number 1 (default setting), then use software tools to distinguish port id.

b.  manual mode

Set card number by card identifier switch, the PCI BIOS will assign pre-allocated I/O address to each adapter. Please set different card number to each adapter (do not duplicate card number setting).

 

  1    2    3     4

Card Number

ON  OFF  OFF    OFF

1

OFF  ON  OFF    OFF

2

ON   ON   OFF    OFF

3

OFF  OFF ON     OFF

4

The card number starts from 0 to 15.

 

2002/04/26

QWe manage to generate the frequency applying an external clock.
With the ISA type card there is the possibility to use
the internal time base clock setting a jumper.
Since on this card has not jumper, is there a software command to
use the internal clock time base?

 

AAccording to our hardware design, it cannot support your demand.

If you want it, we can redesign it to suit your demand.

But it need to pay a little charge. 

 

2002/04/12

QI have one more question regarding the I/O base address determination. Aside of the PCI8255.EXE program, how can someone (a programmer) determine the I/O base address of the PCI-8255 Board in DOS environments?

 

AYour question didn’t modify the driver when we had researched it.

       Please link on our web site to download the source codes.

       http://www.pci8255.net/windows.htm

 

2002/04/10

QWe have a lot of problems with your software and can not get our products delivered.Problems with board PCI 8255 software. 

1º The Windows 98 software did allow us to have more than one board PCI 8255 installed

2º In the new software for Windows XP you have change the functions names and will not allow more than one board, the function

DiiGetinstalledDevice is missing, other functions are also missing

3º We need to control a machine with 2 PCI8255 boards and can not do it.

Please let us know if you can fix this problems.

 

APlease link on our web site to download the driver for WIN2000/XP.

http://64.177.188.78/PCIIndustrialInterface.exe

It can support more one card on a PC.

Please follow the way to install:

    1. Please remove old device driver, Then close your PC.
    2. Please leave all of 8255 card in your PC, then turn on your PC.
    3. Please install the new driver, then close your PC.
    4. Please insert all of 8255 card in your PC, then turn on your PC.
    5. Your PC will setup all of devices by auto.

 

2002/04/09

QI have a couple of questions(If I may) about determining the I/O base address of the PCI 8255/8254. What using your test program (PCI8255.exe), it comes up with.

 

I/O AddressD800

 

Is this the I/O base address for this board (i.e. the I/O address for Port A-1)?

If not, how can I determine it? It is true, Port A-2 I/O address = Port A-1 I/O address + 4 ?

 

AYou are right. That will show the I/O base address when using the test program. Please see the below information about 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.

 

2002/03/28

Q 1- I uses a DOS system.

2- When I run PCI8255.EXE  I/O Address :D800 and I/O switch set to 00001

3- When running the "8255 Loopback test" (Test #1) I get:

Loop : 1 Testing Pin: 0 Output: 000001  Input: 0000FE Correct :800000 Error

Loop : 1 Testing Pin: 1 Output: 000002  Input: 0000FE Correct :400000 Error

Loop : 1 Testing Pin: 2 Output: 000004  Input: 0000FE Correct :200000 Error

Loop : 1 Testing Pin: 3 Output: 000008  Input: 0000FE Correct :100000 Error

Loop : 1 Testing Pin: 4 Output: 000010  Input: 0000FE Correct :080000 Error

Loop : 1 Testing Pin:23 Output: 800000  Input: 0000FE Correct :000001 Error

4- In "Output Test" It seems to toggle some of the red LEDs but NOT all ofthem.

5- In "Input test", it seems Bits 0-7 (from the right side of the screen), Bit 15, Bit 24-31 are all stuck high (1)

6- IN "counter Test" none of OUT0 to OUT4 is blinking, rather some I/O ports are blinking.

7- I have swapped the 8255 chip with each other, I got the same results.

My questions are:

1- Do you think this board has gone bad and I should order a new board? Or there is something that I can do to make it to work?

2- Do you have any test program that is written in X86 Assembly language to test this PCI board, that I can use?

3- Do you know where are these red LEDs connected to?

4- Can you send me the schematics of this PCI board?

 

AIt didn’t have connected the test-loopback about your test result.

Please follow below the picture to test again.

Now we send the attached file to you, it is a manual of PCI 8255.

If you have any question, please do not hesitate to contact us, we do our best to serve you.

 

2002/03/27

 

QI have to ask you about drivers support for PCI 8255-8254 Digital I/O device working with Delphi6. Are you working for upgrading the actual drivers and make these running under XP or Linux

 

AThe PCI8255/8254 card can support Delphi6 on OS WIN95/98/ME/NT/2000 and Linux.

Please see the sample on the web site http://www.pci8255.com/pocket_16_channel_relay_output.htm. We are modifying the new driver to support Delphi6 on WIN XP