Page 1
MODEL PCI-DIO-48(S) USER MANUAL FILE: MPCI-DIO-48S.D3c...
Page 2
Notice The information in this document is provided for reference only. Portwell does not assume any liability arising out of the application or use of the information or products described herein. This document may contain or reference information and products protected by copyrights or patents and does not convey any license under the patent rights of Portwell, nor the rights of others.
Page 3
Terms and Conditions If a unit is suspected of failure, contact Portwell' Customer Service department. Be prepared to give the unit model number, serial number, and a description of the failure symptom(s). We may suggest some simple tests to confirm the failure.
48 I/O lines. Each PPI provides three 8-bit ports A, B, and C. Each 8-bit port can be software configured to function as either inputs or output latches. Port C can also be configured as four Manual PCI-DIO-48(S)
Page 6
Interactive displays show locations and proper settings jumpers to set up the interrupt enable function. Also, sample programs in Turbo-C and Turbo-Pascal are presented in the Software section of this manual. Manual PCI-DIO-48(S)
Page 7
+5 VDC from computer bus (ext. 1A fast-blow fuse recommended). • Power Required: +5 VDC at 250 mA typical. • Size: 6.9" Long. Environmental • Operating Temperature: 0 °C. to 60 °C. • Storage Temperature: -50 °C. to +120 °C. • Humidity: 0 to 90% RH, non-condensing. Manual PCI-DIO-48(S)
PORT C HI STATE DETECT PORT C LO CHANGE STATE INTERRUPT PORT A PORT B CHANGE GROUP PORT C HI STATE DETECT CONTROL PORT C LO LOGIC CHANGE OF STATE INTERRUPT INTERRUPT ENABLE EXTERNAL INTERRUPT Figure 1-1: Block Diagram Manual PCI-DIO-48(S)
Caution! * ESD A single static discharge can damage your card and cause premature failure! Please follow all reasonable precautions to prevent a static discharge such as grounding yourself by touching any grounded surface prior to touching the card. Manual PCI-DIO-48(S)
Also, proper EMI cabling techniques (cable connect to chassis ground at the aperture, shielded twisted-pair wires, etc) should be used for the input/output wiring. Manual PCI-DIO-48(S)
A jumper must be installed in either the TST or the BEN position for the card to function. The foregoing are the only manual setups necessary to use either Input/Output selection. The change-of- state Interrupt Disable/Enable is done via software by writing to a control register in each PPI as described in Chapter 6, Programming. Manual PCI-DIO-48(S)
If you want to determine these yourself, the Vendor ID is 494F (ASCII for "I/O") and the Device IDs are: 48: 0C60 48S: 0E60 The PCI bus supports 64K of I/O address space, so your card's addresses may be located anywhere in the 0000 to FFFF hex range. Manual PCI-DIO-48(S)
GetCOSData(Buf: Pointer): ByteBool; cdecl; external 'Win32COS.dll'; To import the functions manually in C, the necessary lines would be: extern "C" __declspec(dllimport) unsigned char InitCOSDriver(unsigned long BaseAddress, unsigned char IRQ, short BusType, unsigned char BusNumber); extern "C" __declspec(dllimport) unsigned char GetCOSData(void *Buf); Manual PCI-DIO-48(S)
Page 15
VisualBASIC will be enhanced with the addition of the following functions. InPortb Function: Reads a byte from a hardware port. Due to limitations of VisualBASIC, the number is returned in an integer. Declaration: function InPortb(byval address as integer) as integer Manual PCI-DIO-48(S)
Page 16
As an alternative to changing the source code, you can copy the VBACCES.DLL file into your Windows directory. This will allow multiple programs to find the same .DLL without having to know where it is located. Just leave off all references to a path in the .GBL file as shown in the sample. Manual PCI-DIO-48(S)
PPIs in Mode 0 wherein: There are two 8-bit groups (A and B) and two 4-bit groups (C Hi and C Lo). Any group can be configured as an input or an output. Outputs are latched. Inputs are not latched. Manual PCI-DIO-48(S)
00 to base address +3 to enable the port 0 buffers. When you do this, the buffers will be enabled. Manual PCI-DIO-48(S)
Page 19
This corresponds to 98 hex. If the card address is 2D0 hex, use the BASIC OUT command to write to the control register as follows: BASEADDR=&H2D0 OUT BASEADDR+3,&H98 To read the inputs at Port A and the upper nybble of Port C: X=INP(BASEADDR) 'Read Port A Y=INP(BASEADDR+2)/16 'Read Port C Hi Manual PCI-DIO-48(S)
Page 20
Thus, when you desire to to change the mode, you must first set the new mode and then enable the buffers. Enabling the buffers can be done at either Base Address +3 (or +7) or Base Address +8 (or +9). Manual PCI-DIO-48(S)
Group 1, Port B Group 1, Port C Table 6-3: Change-of-state-interrupt-enable Register Writing a "one" disables the port; writing a "zero" enables it. When IRQs occur the interrupt state is latched. To clear the latch, write anything to Base Address+F. Manual PCI-DIO-48(S)
Port A " Port A " Port A " Port A " Port A " Port A " +5 VDC Ground * This line is an I/O port and also a User Interrupt. Table 7-1: Connector Pin Assignments Manual PCI-DIO-48(S)
Page 23
If you experience any problems with this manual or just want to give us some feedback, please email us at: tech@portwell.com. Please detail any errors you find and include your mailing address so that we can send you any manual updates.
Need help?
Do you have a question about the PCI-DIO-48 and is the answer not in the manual?
Questions and answers