ASSURED PCI-ICM-1S Acces I-O Distributor and Integrator User Manual

August 8, 2024
ASSURED

ASSURED PCI-ICM-1S Acces I-O Distributor and Integrator

Product Information

Specifications:

  • Model: PCI-ICM-1S
  • Manufacturer: ACCES I/O Products Inc
  • File: MPCI-ICM-1S.C1c
  • Year: Copyright 2000, 2005
  • Location: San Diego, CA

Product Usage Instructions

Chapter 1: Introduction
Welcome to the user manual for the ACCES I/O PCI-ICM-1S. This section provides an overview of the product and its key features.

Chapter 2: Installation
Warning: Always ensure the computer power is off before connecting or disconnecting any cables or installing the PCI card. Failure to do so may damage the I/O card and void warranties.

To install the PCI-ICM-1S:

  1. Power off your computer.
  2. Open the computer case following manufacturer instructions.
  3. Locate an available PCI slot on the motherboard.
  4. Gently insert the PCI-ICM-1S card into the slot, ensuring it is securely in place.
  5. Close the computer case and power on the computer.
  6. Install any necessary drivers provided by ACCES.

Chapter 3: Option Selection
This section provides guidance on selecting options for the PCI-ICM-1S. Follow the recommendations provided by ACCES for optimal performance.

FAQ:

  • Q: What should I do if my PCI-ICM-1S is not recognized by the computer?
    A: Ensure that the card is properly seated in the PCI slot and that all necessary drivers are installed. If the issue persists, contact ACCES customer support for further assistance.

Notice
The information in this document is provided for reference only. ACCES 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 ACCES, nor the rights of others. IBM PC, PC/XT, and PC/AT are registered trademarks of the International Business Machines Corporation.
Printed in USA. Copyright 2000, 2005 by ACCES I/O Products Inc, 10623 Roselle Street, San Diego, CA 92121. All rights reserved.

WARNING!!
ALWAYS CONNECT AND DISCONNECT YOUR FIELD CABLING WITH THE COMPUTER POWER OFF. ALWAYS TURN COMPUTER POWER OFF BEFORE INSTALLING A CARD. CONNECTING AND DISCONNECTING CABLES, OR INSTALLING CARDS INTO A SYSTEM WITH THE COMPUTER OR FIELD POWER ON MAY CAUSE DAMAGE TO THE I/O CARD AND WILL VOID ALL WARRANTIES, IMPLIED OR EXPRESSED.

Warranty
Prior to shipment, ACCES equipment is thoroughly inspected and tested to applicable specifications. However, should equipment failure occur, ACCES assures its customers that prompt service and support will be available. All equipment originally manufactured by ACCES which is found to be defective will be repaired or replaced subject to the following considerations.

Terms and Conditions
If a unit is suspected of failure, contact ACCES’ 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. We will assign a Return Material Authorization (RMA) number which must appear on the outer label of the return package. All units/components should be properly packed for handling and returned with freight prepaid to the ACCES designated Service Center, and will be returned to the customer’s/user’s site freight prepaid and invoiced.

Coverage
First Three Years: Returned unit/part will be repaired and/or replaced at ACCES option with no charge for labor or parts not excluded by warranty. Warranty commences with equipment shipment.
Following Years: Throughout your equipment’s lifetime, ACCES stands ready to provide on-site or in-plant service at reasonable rates similar to those of other manufacturers in the industry.
Equipment Not Manufactured by ACCES Equipment provided but not manufactured by ACCES is warranted and will be repaired according to the terms and conditions of the respective equipment manufacturer’s warranty.

General
Under this Warranty, liability of ACCES is limited to replacing, repairing or issuing credit (at ACCES discretion) for any products which are proved to be defective during the warranty period. In no case is ACCES liable for consequential or special damage arriving from use or misuse of our product. The customer is responsible for all charges caused by modifications or additions to ACCES equipment not approved in writing by ACCES or, if in ACCES opinion the equipment has been subjected to abnormal use. “Abnormal use” for purposes of this warranty is defined as any use to which the equipment is exposed other than that use specified or intended as evidenced by purchase or sales representation. Other than the above, no other warranty, expressed or implied, shall apply to any and all such equipment furnished or sold by ACCES.

Introduction

This Serial Communications Card was designed for effective asynchronous transmission in either RS422 (EIA422) or RS485 protocols over long communications lines. The data lines are opto-isolated from the computer and from each other to assure communication when large common-mode noise is superimposed.
The card is 4.80 inches long (122 mm) and may be installed in 5-volt PCI-bus slots of IBM PC or compatible computers. A type 16550 buffered UART is used and, for Windows compatibility, automatic control is included to transparently enable/disable the transmission drivers.

Balanced Mode Operation and Load Termination
The card uses differential balanced drivers for long range and noise immunity. RS422 operation permits multiple receivers on the communications lines and RS485 operation permits up to 32 transmitters and receivers on the same set of data lines. Devices at the ends of these networks should be terminated to avoid “ringing”. The card gives you jumper positions to add load resistors to terminate the communications lines.
Also, RS485 communications requires that a transmitter supply a bias voltage to ensure a known “zero” state when none of the devices is transmitting. This card supports biasing by default. If your application requires the transmitter to be un-biased, please contact the factory.

COM Port Compatibility
A type 16550 UART is used as the Asynchronous Communication Element (ACE). It includes a 16-byte FIFO transmit/receive buffer to protect against lost data in multitasking operating systems, while maintaining 100% compatibility with the original IBM serial port. The system assigns the I/O address. A crystal-controlled oscillator is located on the card. This oscillator permits precise selection of baud rates up to 115,200 or, by changing a jumper, up to 460,800 with the standard crystal oscillator.
The driver/receiver used, the SN75176B, is capable of driving extremely long communication lines at high baud rates. It can drive up to +60 mA on balanced lines and receive inputs as low as 200 mV differential signal superimposed on common mode noise of +12 V or -7 V. In case of communication conflict, the driver/receivers feature thermal shutdown.

Communication Mode
This card supports Full-Duplex and Half-Duplex communications with four- wire cable connection. Half-Duplex allows traffic to travel in both directions, but only one way at a time. Many RS485 applications commonly use the Half-Duplex mode because a single pair of wires can be shared.

Baud Rate Ranges
The card has capability for two baud rate ranges and you can select which you wish to use by a jumper placement. One range is for up to 115,200 baud applications and the other is up to 460,800 baud applications. Baud rate is program selected and rates available are listed in a table in the Programming section of this manual.

Auto-RTS Transceiver Control

In Windows applications the driver must be enabled and disabled as needed, allowing all cards to share a two wire cable. This card controls the driver automatically. With automatic control, the driver is enabled when data are ready to be transmitted. The driver remains enabled for one additional character’s transmission time after data transfer is complete and then is disabled. The receiver is usually enabled, but is disabled during transmissions, and then re-enabled after transmission is completed (plus one character transmission time). The card automatically adjusts it’s timing to the baud rate of the data. (Note: Thanks to the automatic control feature, the card is ideal for use in Windows applications)

Specification

  • Communications Interface
    • I/O Connection: 9 Pin DBM Connector.
    • Character length: 5, 6, 7, or 8 bits.
    • Parity: Even, odd or none.
    • Stop Interval: 1, 1.5, or 2 bits.
    • Serial Data Rates: Up to 115,200 baud, asynchronous. A faster range of rates, up to 460,800, is achieved by jumper selection on the card. Type 16550 buffered UART.
    • Address: Continuously mappable within 0000 to FFFF (hex) range of PCI-bus addresses.
    • Receiver Input Sensitivity: +200 mV, differential input.
    • Common Mode Rejection: +12V to -7V.
    • Transmitter Output Drive Capability: 60 mA, with thermal shutdown.
  • Environmental
    • Operating Temperature Range: 0 °C. to +60 °C.
    • Storage temperature Range: -50 °C. to +120 °C.
    • Humidity: 5% to 95%, non-condensing.
    • Power Required: +5VDC at 50 mA typical, +12VDC at 5 mA (Quiescent), 15 mA (Maximum).
    • Size: 4.80 inches long (122 mm).

Installation

A printed Quick-Start Guide (QSG) is packed with the card for your convenience. If you’ve already performed the steps from the QSG, you may find this chapter to be redundant and may skip forward to begin developing your application. The software provided with this card is on CD and must be installed onto your hard disk prior to use. To do this, perform the following steps as appropriate for your operating system.

Configure Card Options via Jumper Selection
Before installing the card into your computer, carefully read Chapter 3: Option Selection of this manual, then configure the card according to your requirements and protocol (RS-232, RS-422, RS-485, 4-wire 485, etc.). Our Windows based setup program can be used in conjunction with Chapter 3 to assist in configuring jumpers on the card, as well as provide additional descriptions for usage of the various card options (such as termination, bias, baud rate range, RS-232, RS-422, RS-485, etc.).

CD Software Installation
The following instructions assume the CD-ROM drive is drive “D”. Please substitute the appropriate drive letter for your system as necessary.

  • DOS
1. Place the CD into your CD-ROM drive.
2. Type `Z to change the active drive to the CD-ROM drive.
3. Type to run the install program.
4. Follow the on-screen prompts to install the software for this board.
  • WINDOWS
1. Place the CD into your CD-ROM drive.
2. The system should automatically run the install program. If the install program does not run promptly, click START | RUN and type , click OK or press .
3. Follow the on-screen prompts to install the software for this board.
  • LINUX
1. Please refer to linux.htm on the CD-ROM for information on installing under linux.

Note: COM boards can be installed in virtually any operating system. We do support installation in earlier versions of Windows, and are very likely to support future versions as well.
Caution! * ESDA 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.

Hardware Installation

  1. Make sure to set switches and jumpers from either the Option Selection section of this manual or from the suggestions of SETUP.EXE.
  2. Do not install card into the computer until the software has been fully installed.
  3. Turn OFF computer power AND unplug AC power from the system.
  4. Remove the computer cover.
  5. Carefully install the card in an available 5V or 3.3V PCI expansion slot (you may need to remove a backplate first).
  6. Inspect for proper fit of the card and tighten screws. Make sure that the card mounting bracket is properly screwed into place and that there is a positive chassis ground.
  7. Install an I/O cable onto the card’s bracket mounted connector.
  8. Replace the computer cover and turn ON the computer. Enter the CMOS setup program of your system and verify that the PCI plug-and-play option is set appropriately for your system. Systems running Windows 95/98/2000/XP/2003 (or any other PNP-compliant operating system) should set the CMOS option to OS. Systems running under DOS, Windows NT, Windows 3.1, or any other non-PNP-compliant operating system should set the PNP CMOS option to BIOS or Motherboard. Save the option and continue booting the system.
  9. Most computers should auto-detect the card (depending on the operating system) and automatically finish installing the drivers.
  10. Run PCIfind.exe to complete installing the card into the registry (for Windows only) and to determine the assigned resources.
  11. Run one of the provided sample programs that was copied to the newly created card directory (from the CD) to test and validate your installation.

The base address assigned by BIOS or the operating system can change each time new hardware is installed into or removed from the computer. Please recheck PCIFind or Device Manager if the hardware configuration is changed. Software you write can automatically determine the base address of the card using a variety of methods depending on the operating system. In DOS, the PCI\SOURCE directory shows the BIOS calls used to determine the address and IRQ assigned to installed PCI devices. In Windows, the Windows sample programs demonstrate querying the registry entries (created by PCIFind and NTIOPCI.SYS during boot- up) to determine this same information.

Option Selection

To help you locate the jumpers described in this section, refer to the Figure 3-1, Option Selection Map on the next page. Operation is determined by jumper installation as described in the following paragraphs.

485 and 422 Mode Jumpers

  • If you are going to operate in two-wire RS485 mode, install a jumper at the location labeled 485.
  • If you are going to operate in four-wire RS485 mode, install jumpers at the locations labeled 485 and 422.
  • If you are going to operate in RS422 mode, install a jumper at the location labeled 422.

Baud Rate Range Jumpers
The jumpers labeled Baud provide means to select baud rates in either of two ranges. When in the “1x” position, the baud rate range is up to 115,200 baud. When in the “4x” position, the baud rate range is up to 460,800 baud.

Note Refer to Table 5-1, Baud Rate Divisor Values

Termination Jumpers
A transmission line should be terminated at the receiving end in its characteristic impedance. Installing jumpers at the locations labeled TERMOUT (for two-wire RS485 mode) or TERMIN (for RS422 or four-wire RS485 mode) applies a 120Ω load across the receive input.

Where there are multiple terminals, only the ports at each end of the network should have terminating impedance as described above. If this card is not to be at one end of the network, do not install the jumpers as described above.
Also, there must be a bias on the TX+ and TX- lines. If the card is not to provide that bias, or if bias on the RX+ and RX- lines is required, contact the factory for technical support.

Address Selection

The card uses one address space. PCI architecture is inherently plug-and-play in nature. This means that the BIOS or Operating System determines the resources assigned to PCI-bus cards rather than you selecting those resources with switches or jumpers. As a result, you cannot set or change the card’s base address. You can only determine what the system has assigned.
To determine the base address that has been assigned, run the PCIFind.EXE utility program provided. This utility will display a list of all of the cards detected on the PCI bus, the addresses assigned to each function on each of the cards, and the respective IRQs (if any) allotted.
Alternatively, some operating systems (Windows95/98/2000) can be queried to determine which resources were assigned. In these operating systems, you can use either PCIFind (DOS) or PCINT (Windows95/98/NT), or the Device Manager utility from the System Properties Applet of the control panel. The card is installed in the Data Acquisition class of the Device Manager list. Selecting the card, clicking Properties, and then selecting the Resources Tab will display a list of the resources allocated to the card.
The PCI bus supports 64K of I/O space, so your card’s address may be located anywhere in the 0000 to FFFF hex range. PCIFind uses the Vendor ID and Device ID to search for your card, then reads the base address and IRQ.
If you want to determine the base address and IRQ yourself, use the following information.

  • The Vendor ID for this card is 494F. (ASCII for “IO”)
  • The Device ID for the card is 1148h.

Programming

Sample Programs

There are sample programs provided with the card in C, Pascal, QuickBASIC, and several Windows languages. DOS samples are located in the DOS directory and Windows samples are located in the WIN32 directory.

Initialization

Initializing the chip requires knowledge of the UART’s register set. The first step is to set the baud rate divisor. You do this by first setting the DLAB (Divisor Latch Access Bit) high. This bit is Bit 7 at Base Address +3. In C code, the call would be:

  • out portb(BASEADDR +3,0×80);

You then load the divisor into Base Address +0 (low byte) and Base Address +1 (high byte). The following equation defines the relationship between baud rate and divisor:

  • desired baud rate = (UART clock frequency) / (32 * divisor)

When the BAUD jumper is in the X1 position, the UART clock frequency is 1.8432 Mhz. When the jumper is in the X4 position, the clock frequency is 7.3728 MHz. The following table lists popular divisor frequencies. Note that there are two columns to consider depending on the position of the BAUD jumper.

  • Recommended maximum distances for differentially driven data cables (RS422 or RS485) are for typical conditions.
    Table 5-1: Baud Rate Divisor Values
    In C, the code to set the chip to 9600 baud is:

    • outportb(BASEADDR, 0x0C);
    • outportb(BASEADDR +1,0);

The second initializing step is to set the Line Control Register at Base Address +3. This register defines word length, stop bits, parity, and the DLAB.

  • Bits 0 and 1 control word length and allow word lengths from 5 to 8 bits. Bit settings are extracted by subtracting 5 from the desired word length.
  • Bit 2 determines the number of stop bits. There can be either one or two stop bits. If Bit 2 is set to 0, there will be one stop bit. If Bit 2 is set to 1, there will be two.
  • Bits 3 through 6 control parity and break enable. They are not commonly used for communications and should be set to zeroes.
  • Bit 7 is the DLAB discussed earlier. It must be set to zero after the divisor is loaded or else there will be no communications.

The C command to set the UART for an 8-bit word, no parity, and one stop bit is:

  • out portb(BASEADDR +3, 0x03)

The final initialization step is to flush the receiver buffers. You do this with two reads from the receiver buffer at base address +0. When done, the UART is ready to use.

Reception
Reception can be handled in two ways: polling or interrupt-driven. When polling, reception is accomplished by constantly reading the Line Status Register at Base Address +5. Bit 0 of this register is set high whenever data are ready to be read from the chip. A simple polling loop must continuously check this bit and read in data as it becomes available. The following code fragment implements a polling loop and uses a value of 13, (ASCII Carriage Return) as an end-of-transmission marker:

do
{
while (!(inportb(BASEADDR +5) & 1)); /Wait until data ready/ data[i++]= inportb(BASEADDR);
}
while (data[i]!=13); /Reads the line until null character rec’d/

Interrupt-driven communications should be used whenever possible and is required for high data rates. Writing an interrupt-driven receiver is not much more complex than writing a polled receiver but care should be taken when installing or removing your interrupt handler to avoid writing the wrong interrupt, disabling the wrong interrupt, or turning interrupts off for too long a period.
The handler would first read the Interrupt Identification Register at Base Address +2. If the interrupt is for Received Data Available, the handler then reads the data. If no interrupt is pending, control exits the routine. A sample handler, written in C, is as follows:

  • readback = inportb(BASEADDR +2);
  • if (readback & 4) /Readback will be set to 4 if data are available/ data[i++]=inportb(BASEADDR);
  • outportb(0x20,0x20); /Write EOI to 8259 Interrupt Controller/ return;

Transmission
RS485 transmission is simple to implement. The AUTO feature of the PCI-ICM- 1S card automatically enables the transmitter when data are ready to send. No software enabling is required.
The following C code fragment demonstrates this process:

while(data[i]); /While there is data to send/
{
while(!(inportb(BASEADDR +5)&0x20)); /Wait until transmitter is empty/ outportb(BASEADDR,data[i]);
i++;
}

Connector Pin Assignments

The popular 9-pin D sub-miniature connector is used for interfacing to communication lines. The connector is equipped with 4-40 threaded standoffs (female screw lock) to provide strain relief. Connector pin assignments are as follows:

Table 6-1: Connector Pin Assignments
The following table shows pin connections between two devices for Simplex, Half-Duplex, and Full-Duplex operations.

Table 6-2: Data Cable Wiring

Appendix A: Application Considerations

Introduction
Working with RS422 and RS485 devices is not much different from working with standard RS232 serial devices and these two standards overcome deficiencies in the RS232 standard. First, the cable length between two RS232 devices must be short; less than 50 feet at 9600 baud. Second, many RS232 errors are the result of noise-induced on the cables. The RS422 standard permits cable lengths up to 5000 feet and, because it operates in the differential mode, it is more immune to induced noise.
Connections between two RS422 devices (with CTS ignored) should be as follows:

Table A-1: Connections Between Two RS422 Devices
A third deficiency of RS232 is that more than two devices cannot share the same cable. This is also true for RS422 but RS485 offers all the benefits of RS422 plus allows up to 32 devices to share the same twisted pairs. An exception to the foregoing is that multiple RS422 devices can share a single cable if only one will talk and the others will all receive.

Balanced Differential Signals
The reason that RS422 and RS485 devices can drive longer lines with more noise immunity than RS232 devices is that a balanced differential drive method is used. In a balanced differential system, the voltage produced by the driver appears across a pair of wires. A balanced line driver will produce a differential voltage from +2 to +6 volts across its output terminals. A balanced line driver can also have an input “enable” signal that connects the driver to its output terminals. If the “enable signal is OFF, the driver is disconnected from the transmission line. This disconnected or disabled condition is usually referred to as the “tristate” condition and represents a high impedance. RS485 drivers must have this control capability. RS422 drivers may have this control but it is not always required.

A balanced differential line receiver senses the voltage state of the transmission line across the two signal input lines. If the differential input voltage is greater than +200 mV, the receiver will provide a specific logic state on its output. If the differential voltage input is less than -200 mV, the receiver will provide the opposite logic state on its output. A maximum operating voltage range is from +6V to -6V allows for voltage attenuation that can occur on long transmission cables.
A maximum common mode voltage rating of +7V provides good noise immunity from voltages induced on the twisted pair lines. The signal ground line connection is necessary in order to keep the common mode voltage within that range. The circuit may operate without the ground connection but may not be reliable.

Table A-2: RS422 Specification Summary
To prevent signal reflections in the cable and to improve noise rejection in both the RS422 and RS485 mode, the receiver end of the cable should be terminated with a resistance equal to the characteristic impedance of the cable. (An exception to this is the case where the line is driven by an RS422 driver that is never “tristated” or disconnected from the line. In this case, the driver provides a low internal impedance that terminates the line at that end.)

Note
You do not have to add a terminator resistor to your cables when you use the PCI-ICM-1S card. Termination resistors for the RX+ and RX- lines are provided on the card and are placed in the circuit when you install the TERMIN and TERMOUT jumpers. (See Chapter 3, Option Selection of this manual.)

RS485 Data Transmission
The RS485 Standard allows a balanced transmission line to be shared in a party-line mode. As many as 32 driver/receiver pairs can share a two-wire party line network. Many characteristics of the drivers and receivers are the same as in the RS422 Standard. One difference is that the common mode voltage limit is extended and is +12V to -7V. Since any driver can be disconnected (or tristated) from the line, it must withstand this common mode voltage range while in the tristate condition.
The following illustration shows a typical multidrop or party line network. Note that the transmission line is terminated on both ends of the line but not at drop points in the middle of the line.

RS485 Four-Wire Multidrop Network
An RS485 network can also be connected in a four-wire mode. In a four-wire network, it’s necessary that one node be a master node and all others be slaves. The network is connected so that the master communicates to all slaves and all slaves communicate only with the master. This has advantages in equipment that uses mixed protocol communications. Since the slave nodes never listen to another slave’s response to the master, a slave node cannot reply incorrectly.

Customer Comments
If you experience any problems with this manual or just want to give us some feedback, please email us at: manuals@accesio.com. Please provide details of any errors you find and include your mailing address so that we can send you manual updates.

10623 Roselle Street, San Diego CA 92121
Tel. (858)550-9559
FAX (858)550-7322
www.accesio.com

Assured Systems
Assured Systems is a leading technology company with over 1,500 regular clients in 80 countries, deploying over 85,000 systems to a diverse customer base in 12 years of business. We offer high-quality and innovative rugged computing, display, networking and data collection solutions to the embedded, industrial, and digital-out-of-home market sectors.

US
sales@assured-systems.com
Sales: +1 347 719 4508
Support: +1 347 719 4508
1309 Coffeen Ave
Ste 1200
Sheridan
WY 82801
USA

EMEA
sales@assured-systems.com
Sales: +44 (0)1785 879 050
Support: +44 (0)1785 879 050
Unit A5 Douglas Park
Stone Business Park
Stone
ST15 0YJ
United Kingdom
VAT Number: 120 9546 28
Business Registration Number: 07699660

www.assured-systems.com
sales@assured-systems.com

References

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

ASSURED User Manuals

Related Manuals