Page 1
Copyright Copyright 2004 by ICP DAS. All rights are reserved. Trademark The names used for identification only may be registered trademarks of their respective companies. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 1...
AUX data Register..................27 3.3.4. INT Mask Control Register ................28 3.3.5. Aux Status Register..................28 3.3.6. Interrupt Polarity Control Register............... 28 3.3.7. I/O Selection Control Register ..............29 3.3.8. Read/Write 8-bit data Register..............30 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 2...
Page 3
................46 IGITAL INTPUT AND OUTPUT P2C0....................46 NTERRUPT OF APPENDIX.........................47 A. R DOS S ................47 PPENDIX ELATED OFTWARE Where is the related software ................47 DOS LIB Function ..................... 48 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 3...
If any of these items is missing or damaged, contact the dealer from whom you purchased the product. Save the shipping materials and carton in case you want to ship or store the product in the future. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 5...
I/O Port Location The PIO-D56/PIO-D24 consists of one 24-bit bi-directional port, one 16-bit input port and one 16-bit output port (only for PIO-D56). The 24-bit port supports three 8-bit groups, which are PA, PB and PC, respectively. Each 8- bit group can be configured as a D/I or D/O port via the software. Note that when the PC is first turned on or if a reset has been executed, all ports are set as D/I ports.
Pin Assignment The Pin assignments for all connectors on the PIO-D56/D24 are represented in Tables 2.3, 2.4 and 2.5. All signal sources for each digital input or output pin (channel) is TTL compatible. Table 2.3 CON3: 37 pin D-type female connector(for Port0, Port1, Port2).
Page 9
Table 2.4 CON1 : 20-pin header (only for PIO-D56) Pin Number Description Pin Number Description DO10 DO11 DO12 DO13 DO14 DO15 +12V Table 2.5 CON2 : 20-pin header (only for PIO-D56) Pin Number Description Pin Number Description DI10 DI11 DI12...
& send their initial values to every D/O port (Refer to Sec. 3.3.7 and Sec.3.3.8) For more information on the initial procedure for digital I/O ports, please refer to the DEMO1.C demo program. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 10...
Page 11
The digital I/O (CON3) control architecture for the PIO-D56/D24 is demonstrated in Figure 2.2. The operation method used for the control signal is presented below. • RESET\ is in the Low-state all D/I/O operations are disabled • RESET\ is in the High-state all D/I/O operations are enabled.
2.4.2 DI Port Architecture (CON2) The digital input (CON2) control architecture for the PIO-D56 is demonstrated in Figure 2.3. • RESET\ is in the Low-state all DI operations are disabled • RESET\ is in the High-state all DI operations are enabled Figure2.3 DI Port Architecture (CON2)
2.4.3 DO Port Architecture (CON1) The digital output (CON1) control architecture for the PIO-D56 is demonstrated in Figure 2.4. • RESET\ is in the Low-state all DO operations are disabled • RESET\ is in the High-state all DO operations are enabled The power-on states are as follows: •...
The P2C0, P2C1, P2C2 and P2C3 can be used as interrupt signal source. Refer to Sec. 2.1 for P2C0/P2C1/P2C2/P2C3 location. The interrupt of the PIO-D56/PIO-D24 is level-trigger & Active_High. The interrupt signal can be programmable as inverted or non-inverted. The procedures for how to configure the interrupt signal source are given as follows: 1.
The DN-37 is a general purpose daughter board for DB-37 pins with DIN- Rail Mountings. The DN-50 is designed for 50-pin flat-cable headers win DIN- Rail mountings. They are also designed for easy wire connection via pin-to-pin. Figure 2.6 DN-37/DN-50 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 15...
The ADP-20/PCI is an extender for the 20-pin header. The one side of the ADP-20/PCI can be connected to a 20-pin header. The other side can be mounted onto the PC chassis as is depicted by the following: Figure 2.8 ADP-20/PCI PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 16...
2. 20-Pin connector for 16 channel digital output, A-82X, A-62X, DIO-64, ISO-DA16/DA8, 3. Channel: 16 Form A Relay , 8 Form C Relay. 4. Relay: switching up to 5A at 110ACV / 5A at 30DCV. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 19...
DB-24PR Db-24PRD DB-24POR DB-24SSR Note : There is no 50-pin flat cable header in the PIO-D56/PIO-D24. The PIO- D56/PIO-D24 has one DB-37 connector and two 20 pin flat-cable headers (only for PIO-D56). PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 20...
I/O Control Register How to Find the I/O Address The plug & play BIOS will assign a proper I/O address to every PIO/PISO series card in the power-on stage. The IDs for the PIO-D56/D24 cards are given as follows: PIO-D24 : <...
Page 22
The necessary means for identifying the PIO series cards of ICPDAS data acquisition boards by the sub-vender, sub-device and sub-Aux ID is given in table 3-1 below the following figure. Figure 3.1 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 22...
Page 23
Note: If your board is a different version, it may also have different Sub IDs. However this will present no actual problem. No matter which version of the board you select, we offer the same function calls. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 23...
The simplest way to identify which card is card_0 is to use wSlotBus & wSlotDevice in the following manner: 1. Remove all PIO-D56/D24 boards from the PC. 2. Install one PIO- D56/D24 into the PC’s PCI_slot1, run PIO_PISO.EXE. Then record the wSlotBus1 and wSlotDevice1 information.
Page 25
& wSlotDevice found in step1 and step2. Note that normally the card installed in slot 0 is card0 and the card installed in slot1 is card1 for PIO/PISO series cards. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 25...
I/O address. The Plug & Play BIOS will effectively perform the assignment of proper I/O addresses to each PIO/PISO series card. The I/O addresses for the PIO-D56/D24 are given in the table below, all of which are based on the base address of each card.
Aux3 Aux2 Aux1 Aux0 When the Aux is used for D/O, the output state is controlled by this register. This register is designed for feature extension. Therefore, do not use this register. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 27...
This register provides a function to control invert or non-invert for the interrupt signal source. A detailed application example is given below. INV0=1 select the non-inverted signal from P2C0 INV0=0 select the inverted signal from P2C0 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 28...
This register provide the function for configuration digital input/output port of the PIO-D56/D24. Every I/O port can be programmed to be a D/I or a D/O port. Note that all ports are used as D/I ports when the PC is first turned on.
Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 There are five/three 8-bit I/O ports in the PIO-D56/PIO-D24. Each port is easy to read/write by access his owns data register. outportb(wBase+0xc0,Val); /* write to port-0 Val=inportb(wBase+0xc0); /* read from port-0 outportb(wBase+0xcc,0x07);...
The PIODIO.DLL,and PIODIO.Vxd will be copied onto C:\Windows\SYSTEM PnP Driver Installation After installing the hardware (PIO-D56/D24) and you turn the power on for your PC, Windows 98/Me/2000/XP will find a PCI card device and then ask the user to provide a PIODIO.inf to install the hardware driver onto the computer.
VB, Delphi and Borland C Builder which can call on the PIODIO.DLL driver in the user mode. Following that the DLL driver will call up PIO.sys to access the hardware system. Figure 5.1 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 32...
[output] respectively, as shown in following table. Table 5.2 Keyword Setting parameter by user Get the data/value before calling this function ? from this parameter after calling this function ? [Input] [Output] [Input, Output] PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 33...
Page 34
PIODIO_OutputWord(DWORD wPortAddress, DWORD void wOutData); void PIODIO_OutputByte(DWORD wPortAddr, WORD bOutputValue); DWORD PIODIO_InputWord(DWORD wPortAddress); WORD PIODIO_InputByte(DWORD wPortAddr); PIODIO_IntInstall(WORD wBoardNo, HANDLE *hEvent, WORD WORD wInterruptSource, WORD wActiveMode); WORD PIODIO_IntRemove(void); WORD PIODIO_IntResetCount(void); WORD PIODIO_IntGetCount(DWORD *dwIntCount); PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 34...
: [Input] I/O port addresses, please refer to function PIODIO_GetConfigAddressSpace(). Only the low WORD is valid. • Return: 16 bits data with the leading 8 bits are all 0.(Only the low BYTE is valid.) PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 36...
DWORD PIODIO_InputWord(DWORD wPortAddr); • Parameter : wPortAddr : [Input] I/O port addresses, please refer to function PIODIO_GetConfigAddressSpace(). Only the low WORD is valid. • Return: 16 bit data. Only the low WORD is valid. PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 37...
This function must be called once before applying other PIODIO functions. • Syntax : WORD PIODIO_DriverInit(); • Parameter : None • Return: Please refer to "Section 5.1 Error Code". PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 38...
Sub ID you input. We have demonstrated an example below: wRtn=PIODIO_SearchCard(&wBoards, 0x800140); You will get the total number of PIO-D56/D24 boards including all versions in your PC. • Return: Please refer to "Section 5.1 Error Code".
This subroutine will read the dwIntCount defined in the device driver. • Syntax : WORD PIODIO_IntGetCount(DWORD *dwIntCount); • Parameter: dwIntCount : [Output] Address of dwIntCount, which will stores the counter value of interrupt. • Return: Please refer to "Section 5.1 Error Code". PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 41...
|--\ PIODIO.PAS Declaration file |--\VB6 for Visual Basic 6 |--\ PIODIO.BAS Declaration file The list of demo programs : : Digital intput and output of Port0/1/2 and CON1/CON2. : Interrupt of P2C0 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 45...
This demo program uses port0 as digital output port and P2C0 as interrupt source. Then port0 will output a high and low signal repeatedly according to the trigger of the interrupt source. Figure 6.2 PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 46...
: [Input] SubVendor ID of the board wSubDevice : [Input] SubDevice ID of the board wSubAux : [Input] SubAux ID of the board • Return: Please refer to " Table A.1". PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 48...
Page 49
This subroutine will obtain the version number of PIODIO driver. • Syntax : WORD PIO_GetDriverVersion(WORD *wDriverVersion) • Parameter : wDriverVersion : [Output] Address of wDriverVersion • Return: Please refer to " Table A.1". PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 49...
Page 50
: [Input] SubVendor ID of the board wSubDevice : [Input] SubDevice ID of the board wSubAux : [Input] SubAux ID of the board. • Return: Please refer to " Table A.1". PIO-D56/PIO-D24 User’s Manual (Ver.2.3, JUN/2004, PPH-005-23) ---- 50...
Need help?
Do you have a question about the PIO-D56 and is the answer not in the manual?
Questions and answers