ASSURED 104-ICOM-2S Official Acces I O Distributor and Integrator User Manual

August 25, 2024
ASSURED

ASSURED 104-ICOM-2S Official Acces I O Distributor and Integrator

USER MANUAL

MODEL: 104-ICOM-2S AND 104-COM-2S

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 2001, 2005 by ACCES 1/0 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 BOARD. CONNECTING AND DISCONNECTING
CABLES, OR INSTALLING BOARDS INTO A SYSTEM WITH THE

COMPUTER OR FIELD POWER ON MAY CAUSE DAMAGE TO THE 1/0 BOARD 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.

Chapter 1: Introduction

This serial communications board is designed for use in PC/104 compatible computers. Two isolated serial data ports are provided on the board. Model COM-2S is simply a non-isolated version of the ICOM-2S.

Multipoint Opto-isolated Communications

The board allows for multipoint transmission on long communication lines in noisy environments using RS422 or RS485 differential line drivers. The data lines are opto-isolated from the computer and from each other to assure communication when large common mode noise are superimposed. The on-board DC- DC converters provide isolated power for the line driver circuits.

A crystal oscillator is located on the board. This oscillator permits precise selection of baud rates from 50 to 115,200. Baud rates up to 460,800 baud may be provided as a factory option. The Programming section of this manual contains a table to use when selecting baud rate.

The output transceivers used, type 75176B, are capable of driving extremely long communication lines at high baud rates. They can drive up to ±60mA on balanced lines and receive inputs as low as ±200mV differential signal. Opto- isolators on the board provide protection to maximum 500 V. In case of communication conflict, the transceivers feature thermal shutdown.

COM Port Compatibility

Type ST16C550 UARTs are used as the Asynchronous Communication Element (ACE) which include a 16-byte transmit/receive buffer to protect against lost data in multitasking operating systems, while maintaining 100 percent compatibility with the original IBM serial port.
You can select a base address anywhere within the 1/0 address range 000 to 3E0 hex.

Communication Modes

This model supports a variety of 2-wire and 4-wire cable connections. 2 wire or Half-Duplex allows traffic to travel in both directions, but only one direction at a time. In 4 wire or Full-Duplex mode data travels in both directions at the same time.

Line Bias and Termination

For increased noise immunity, the communication lines may be loaded at the receiver and biased at the transmitter. RS485 communications requires that one transmitter supply a bias voltage to ensure a known “zero” state when all transmitters are off, and the last receiver input at each end of the network be terminated to prevent “ringing”. The board supports these options with jumpers on the board. See Chapter 3, Option Selection for more details.

Transceiver Control

RS485 communication requires the transmitter driver to be enabled and disabled as needed, to allow all boards to share the communications line. The board has automatic driver control. When the board is not transmitting, the receiver is enabled and the transmitter driver is disabled. Under automatic control, when data is to be transmitted, the receiver is disabled and the driver is enabled. The board automatically adjusts its timing to the baud rate of the data.

Integrator

Specification

Communications Interface

  • Serial Ports: Two shielded male □-sub 9-pin IBM AT style connectors compatible with RS422 and RS485 specifications. Serial communications ACE used is type ST16C550. Transceivers used are type 75176.
  • Serial Data Rates: 50 to 115,200 baud. 460,800 baud as a factory installed option. Asynchronous.Type 16550 buffered UART.
  • Address: Continuously mappable within 000 to 3FF (hex) range of AT 1/0 bus addresses.
  • Multipoint: Compatible with RS422 and RS485 specifications. Up to 32 drivers and receivers allowed on line.
  • Input Isolation: 500 Volts, from computer and between ports.
  • Receiver Input Sensitivity: ±200 mV, differential input.
  • Transmitter Output Drive Capability: 60 mA (100 mA short-circuit current capability).

Environmental

  • Operating Temperature Range: 0 to +60 °C.
  • Industrial Version: -30° to +85° C.
  • Storage Temperature Range: -50 to +120 °C.
  • Humidity: 5% to 95%, non-condensing.
  • ower Required: +5VDC at 200 mA typical, 300 mA maximum.

Chapter 2: Installation

A printed Quick-Start Guide (QSG) is packed with the board 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 PC/104 Board 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.

CD 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 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 I 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 serial ports under linux.

Installing the Hardware

Before installing the board, carefully read Chapter 3 and Chapter 4 of this manual and configure the board according to your requirements. The SETUP Program can be used to assist in configuring jumpers on the board. Be especially careful with Address Selection. If the addresses of two installed functions overlap, you will experience unpredictable computer behavior. To help avoid this problem, refer to the FINDBASE.EXE program installed from the CD. The setup program does not set the options on the board, these must be set by jumpers.

This multi-port serial communication board uses software-programmable address ranges for each UART, stored in an onboard EEPROM. Configure the address of the EEPROM using the onboard Address Selection jumper block, then use the provided Setup program to configure addresses for each onboard UART.

To Install the Board

1. Install jumpers for selected options and base address according to your application requirements, as mentioned above.
2. Remove power from the PC/104 stack.
3. Assemble standoff hardware for stacking and securing the boards.
4. Carefully plug the board onto the PC/104 connector on the CPU or onto the stack, ensuring proper alignment of the pins before completely seating the connectors together.
5. Install 1/0 cables onto the board’s 1/0 connectors and proceed to secure the stack together or repeat steps 3-5 until all boards are installed using the selected mounting hardware.
6. Check that all connections in your PC/104 stack are correct and secure then power up the system.
7. Run one of the provided sample programs appropriate for your operating system that was installed from the CD to test and validate your installation.

Installing COM Ports in Windows Operating Systems

*NOTE: COM boards can be installed in virtually any operating system and we do support installation in earlier versions of windows, and are very likely to support future version as well. For use in Win CE, contact the factory for specific instructions.

Windows NT4.0

To install the COM ports in Windows NT4 you’ll need to change one entry in the registry. This entry enables IRQ sharing on multi-port COM boards. The key is
HKEY _LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Serial\. The name of the value is PermitShare and the data should be set to 1.
You’ll then add the board’s ports as COM ports, setting the base addresses and IRQs to match your board’s settings.

To change the registry value, run RegEdit from the STARTIRUN menu option (by typing REGEDIT [ENTER) in the space provided). Navigate down the tree view on the left to find the key, and double click on the name of the value to open a dialog allowing you to set the new data value.

To add a COM port, use STARTICONTROL PANELIPORTS applet and click ADD, then enter the correct UART address and Interrupt number.
When the “Add New Port” dialog is configured click OK, but answer “Don’t Restart Now” when prompted, until you’ve added any other ports as well. Then restart the system normally, or by selecting “Restart Now.”

WindowsXP

To install the COM ports in Windows XP you will be manually installing “standard” communications ports, then changing the settings for resources used by the ports to match the hardware.
Run the “Add Hardware” applet from the Control Panel.

Click “Next” at the “Welcome to the Add New Hardware Wizard” dialog.

You’ll briefly see a ” … searching .. .” message, then

Select “Yes, I have already connected the hardware” and Click “Next”

Select “Add a new hardware device” from the bottom of the list presented and Click “Next.” Select “Install the hardware that I manually select from a list” and Click “Next.”
Select “Ports (COM & LPT) and Click “Next”
Select “(Standard Port Types)” and “Communications Port” (the defaults), Click “Next.” Click “Next.”

Click the “View or change resources for this hardware (Advanced)” link.

Click the “Set Configuration Manually” button.
Select “Basic Configuration 8” from the “Settings Based on:” drop-down list.
Select “1/0 Range” in the “Resource Settings” box and Click the “Change Settings … ” button. Enter the base address of the board, and Click “OK”

Integrator

Select “IRQ” in the “Resource Settings” box and Click the “Change Settings” button.
Enter the IRQ of the board and Click “OK”.
Close the “Set Configuration Manually” dialog and Click “Finish.”
Click “Do Not Reboot” if you wish to install more ports. Repeat all of the above steps, entering the same IRQ but using the configured Base address for each additional UART.
When you are done installing ports, reboot the system normally.

Chapter 3: Option Selection

The following paragraphs describe the functions of the various jumpers on the board.

AS through A9

Place jumpers at locations A5 through A9 to set the board’s base address on the 1/0 bus.
Installing a jumper sets that bit to a zero, while no jumper will leave the bit a one.
See chapter 4 of this manual for more details on selecting an available 1/0 address.

IRQ3 through IRQ15

Place a jumper at the location that corresponds to the IRQ level that your software will be able to service. One IRQ services both serial ports.

485A/B and 422A/B

A jumper at the 485 location sets that port for 2 wire RS485 (Half Duplex) mode.
A jumper at the 422 location sets that port for 4 wire RS422 (Full-Duplex) mode.
For 4 wire RS485 applications install the 422 jumper if the port is the master, if the port is a slave install both the 422 and 485 jumpers.

TRMI and TRMO

The TRMI jumpers connect the on board RC termination circuits to the input (receive) lines.
These jumpers should be installed for 4 wire RS422 mode.
The TRMO jumpers connect the on board RC termination circuits to the outpuUinput lines.
These jumpers should be installed for 2 wire RS485 mode under certain conditions.
See the following paragraph for more details.

Integrator

Terminations and Bias

A transmission line should be terminated at the receiving end in its characteristic impedance. Installing a jumper at the location labeled TRMO applies a 1200 load in series with a 0.01µF capacitor across the output for RS422 mode and across the transmiUreceive outpuUinput for RS485 operation. A jumper at the TRMI location applies a load on RS422 inputs.

Integrator

Figure 3-2: Simplified Schematic – Two-Wire and Four-Wire Connection

Full or Half-Duplex

Full-Duplex allows simultaneous bi-directional communications. Half-Duplex allows bi-directional transmit and receiver communication but only one at a time, and is required for RS485 communications. Proper selection depends on the wire connections used to connect the two serial ports. The following table shows how two serial communication boards would be interconnected for the various modes. Tx designates the transmit wires and Rx designates the receive wires.

Communication Modes and Cabling Options

Integrator

Chapter 4: Address Selection

The board’s base address can be selected anywhere within the 1/0 bus address range 000-3E0 hex, providing that the address does not overlap with other functions. If in doubt, refer to the table below for a list of standard address assignments. (The primary and secondary binary synchronous communication ports are supported by the Operating System.) The base address locator program FINDBASE provided on CD (or diskettes) will assist you to select a base address that will avoid conflict with other installed computer resources. Then, the SETUP program will show you where to position the address jumpers when you have selected a base address.

The following provides background information to help you better understand this process.

Table 4-1: Standard Address Assignments for Computers

HEX RANGE USAGE
000-00F 8237 OMA Controller 1
020-021 8259 Interrupt
040-043 8253 Timer
060-06F 8042 Keyboard Controller
070-07F CMOS RAM, NMIMask Reg, RT Clock
080-09F OMA Page Register
0A0-0BF 8259 Slave Interrupt Controller
0C0-0DF 8237 OMA Controller 2
0F0-0F1 Math Coprocessor
0F8-0FF Math Coprocessor
170-177 Fixed Disk Controller 2
1F0-1F8 Fixed Disk Controller 1
200-207 Game Port
238-23B Bus Mouse
23C-23F Alt. Bus Mouse
278-27F Parallel Printer
2B0-2BF EGA
2C0-2CF EGA
2D0-2DF EGA
2E0-2E7 GPIB (AT)
2E8-2EF Serial Port
2F8-2FF Serial Port
300-30F
310-31F
320-32F Hard Disk (XT)
370-377 Floppy Controller 2
378-37F Parallel Printer
380-38F SDLC
3A0-3AF SDLC
3B0-3BB MDA
3BC-3BF Parallel Printer
3C0-3CF VGA EGA
3D0-3DF CGA
3E8-3EF Serial Port
3F0-3F7 Floppy Controller 1
3F8-3FF Serial Port

Board Address jumpers are marked A5-A9. The following table lists jumpers name vs. the address line controlled and the relative weights of each.

Table 4-2: Board Base Address Setup

Board Address Settings 1st Digit 2nd Digit 3rdDigit
Jumper Name A9 AB A7
Address Line Controlled A9 AB A7
Decimal Weight 512 256 128
Hexadecimal Weight 200 100 80

In order to read the address jumper setup, assign a binary “1” to jumpers that are OFF and a binary “0” to the jumpers that are ON. For example, as illustrated in the following table, address selection corresponds to binary 11 000x xxxx (hex 300). The “x xxxx” represents address lines A4 through AO used on the board to select individual registers. See Chapter 5, Programming in this manual.

Table 4-3: Example Address Setup

Jumper Name| A9| AB| A7| A6| A5| |
---|---|---|---|---|---|---|---
Setup| OFF| OFF| ON| ON| ON| |
Binary Representation| 1| 1| 0| 0| 0| |
Conversion Factors| 2| 1| 8| 4| 2| |
HEX Representation| 3| 0| 0

Review the Address Selection Table carefully before selecting the board address. If the addresses of two installed functions overlap you will experience unpredictable computer behavior.

Chapter 5: Programming

A total of 32 consecutive address locations are allocated to the board, 17 of which are used. The UARTs are addressed as follows:

Table 5-1: Address Selection Table

1/0 Address Read Write
Base +0 thru 7 COMA UART COM A UART
Base +8 thru F COMB UART COMB UART
Base +10h Board IRQ Status N/A
Base +11 thru 1F N/A N/A

The Read I Write registers for the UARTs match the industry-standard 16550 registers. The Board IRQ status register is compatible with Windows NT. COM A will set bit 0 hi on interrupt, COM B will set bit 1 hi on interrupt.

Sample Programs

There are sample programs provided with the 104-ICOM-2S board 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.

Windows Programming

The board installs into Windows as COM ports. Thus the Windows standard API functions can be used. In particular:

  • CreateFile() and CloseHandle() for opening and closing a port.
  • SetupComm(), SetCommTimeouts(), GetCommState(), and SetCommState() to set and change a port’s settings.
  • ReadFile() and WriteFile() for accessing a port.
  • See the documentation for your chosen language for details.

Under DOS, the process is very different. The remainder of this chapter describes DOS programming.

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:

outportb(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= (crystal frequency) I (32 * divisor)

The UART clock frequency is 1.8432MHz. The following table lists popular divisor frequencies.

Table 5-2: Baud Rate Divisors

Baud Rate| Divisor| Divisor (Factory Option)| Notes| **Max. Diff’I. Cable Length***
---|---|---|---|---
460800| | 1| | 550
230400| | 2| | 1400
115200| 1| 4| | 3000 ft.
57600| 2| 8| | 4000 ft.
38400| 3| 12| | 4000 ft.
28800| 4| 16| | 4000 ft.
19200| 6| 24| | 4000 ft.
14400| 8| 32| | 4000 ft.
9600| 12| 48| Most Common| 4000 ft.
4800| 24| 96| | 4000 ft.
2400| 48| 192| | 4000 ft.
1200| 96| 384| | 4000 ft.

*These are theoretical maximums based on typical conditions and good quality cables based on the EIA 485 and EIA 422 standard for balanced differential drivers.

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 stop bits.
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:
outportb(BASEADDR +3, 0x03)

The third step of the initialization sequence is to set the Modem Control Register at Base Address +4. This register controls functions on some boards. Bit 1 is the Request to Send (RTS) control bit. This bit should be left low until transmission time. (Note: When operating in the automatic RS485 mode, the state of this bit is not significant.) Bits 2 and 3 are user-designated outputs. Bit 2 may be ignored on this board. Bit 3 is used to enable interrupts and should be set high if an interrupt-driven receiver is to be used.

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 and 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. Polling is not effective at high data rates above because the program cannot do anything else when it is polling or data could be missed. 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 automatically enables the transmitter when data is ready to send so no software enabling procedure is needed.

Chapter 6: Connector Pin Assignments

The popular 9-pin D subminiature connector (male) is used for interfacing to communication lines. The connectors are equipped with 4-40 threaded standoffs (female screw lock) to provide strain relief. The connector labeled P2 is for COM A, and P3 is COMB.

Table 6-1: P2/P3 Connector Pin Assignments

Pin No. RS422 Four-Wire RS485 Two-Wire
1 Rx-
2 Tx+ T/Rx+
3 Tx- T/Rx-
4 Not Used
5 Isolated GND Isolated GND
6 Not Used
7 Not Used
8 Not Used
9 Rx+

Note

If the unit is CE-marked, then CE-certifiable cabling and breakout methodology (cable shields grounded at the connector, shielded twisted-pair wiring, etc) must be used.

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 detail any errors you find and include your mailing address so that we can send you any manual updates.

ACCES

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


FAQ (Frequently Asked Questions)

Q: How do I contact customer support for technical assistance?

A: You can reach out to ACCES I/O Products, Inc. at (858)
550-9559 or contact them via email at contactus@accesio.com for technical support.

Q: What should I do if my equipment fails?

A: In case of equipment failure, refer to the warranty terms and conditions provided in the manual. Contact ACCES for repair or replacement options.

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