HPlogo Asynchronous Serial Communications Programmer's Reference Manual: HP 3000 MPE/iX Computer Systems > Chapter 1 Introduction

Data Communications Concepts Reviewed

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Glossary

 » Index

The hardware and software described in this chapter conforms to specific rules designed to make data communications between devices possible. To use this manual as a programming guide, you need a good understanding of these rules and of data communications concepts in general. If you are unfamiliar with data communications concepts, it would be helpful for you to take a general course in data communications before you use this manual extensively. You may also want to review other Hewlett-Packard documentation, as listed below:

  • DTC Installation and Service Manual, the hardware reference for the DTC.

  • The manual for the peripheral device.

  • DTC Planning Guide.

The material in the rest of this chapter is designed to serve as a review of several concepts that are central to successfully connecting terminals and printers to a HP 3000 Series 900 computer.

Protocols

In order for electronic devices to communicate with each other they must conform to well defined sets of rules which govern factors ranging from hardware configurations to the actual process of data transfer. Such a set of rules is called a protocol. Data communications protocols are conventions set up to assure the orderly exchange of information between two or more data processing entities.

Hardware Protocols

The lowest level protocols deal with the hardware connection between two pieces of data processing equipment. The cables used to connect asynchronous devices to the Datacommunications and Terminal Controller conform to protocols defined by the Electronic Industries Association (EIA). These protocols, RS-232-C and RS-422, were developed and updated in conjunction with the Bell System and independent equipment manufacturers.

The RS-232-C standard defines the electrical circuit functions for 25 connector pins. This standard is implemented by Hewlett-Packard in two versions. The first version makes use of only three of the defined transmission circuits, Data-In, Data-Out and Signal Ground. This special implementation provides an inexpensive interface, since the cable consists of only three wires with the connector on one end replaced by a three-pin connector. However, it is limited to local (direct) connections, in distances up to 15 meters (50 feet).

The second Hewlett-Packard RS-232-C implementation makes use of additional electrical circuits defined by the standard. The cable and connectors more closely resemble conventional RS-232-C 25-wire cable and connectors. This implementation can be used for direct connections, subject to the same system limitations as the three-pin version. It must be used when modems are included (remote connection), because additional signals are generated by modems, and required for modem control. See the DTC Installation and Service Manual for a pin-out diagram of the signals employed by this implementation.

The RS-422 standard is implemented by HP in a five pin version. The connecting cable is composed of one twisted pair of wires for Data-In, one twisted pair of wires for Data-Out, and a single wire for Signal Ground. Devices can be connected via this interface at distances up to 1,500 meters (4,000 feet).

The coaxial cable used for the Local Area Network complies with the 802.3 standard developed by the Institute of Electrical and Electronics Engineers (IEEE). This standard describes a transmission access method called Carrier Sense Multiple Access with Collision Detect (CSMA/CD).

Flow Control Protocols

Flow Control is the means by which the transfer of data between the system and an asynchronous device is regulated. It protects both the system and devices from data overruns. A data overrun occurs when the sender of data transmits that data faster than the receiver can accept it. Because the receiver cannot accept all the data being sent to it, it is said to be overrun with data. Overruns inevitably result in lost data.

With asynchronous devices on MPE/iX systems, flow control actually takes place between the device and the DTC. One main method of flow control is used: XON/XOFF protocol. Its fundamental purpose is to protect devices from overruns.

XON/XOFF protocol is controlled by the recipient of the data being transferred. The recipient sends an XOFF character (ASCII DC3) to the sender of the data if, and only if, it is unable to continue to receive data. The sender then suspends transmission and waits for the receiver to send an XON character (ASCII DC1), thereby signaling that it is once again ready to receive data.

The flow control method being used is sometimes referred to as the pacing method. For instance, the terminal settings for XON/XOFF protocol are called transmit pacing (XmitPace) and receive pacing (RecvPace).

The DTC is protected from overruns through an additional flow control mechanism referred to as the read trigger. The read trigger is also the ASCII DC1 character, and is generated by the ASC software when the system is ready to accept data.

There is also a flow control mechanism used between a system and its DTCs called the Transport Flow Control Protocol. Its fundamental purpose is to protect DTCs from being overrun by data from the system. It also handles error checking of the packets passed to and from the system through the LAN. This flow control mechanism does not directly affect the way devices act and react.

NOTE: The characters XON (ASCII DC1) and XOFF (ASCII DC3) are defined as special characters and are reserved for the purpose of protocol. These characters may not be used as data except in binary mode, if binary mode is supported.

Local Device Settings

Each device has certain specific characteristics which define the way in which it physically interacts with the system. For HP terminals these characteristics are generally set by changing configuration parameters from the keyboard via terminal configuration menus. Terminal settings include such things as baud rate (transmission speed), parity settings, and terminal block mode functions. Terminal settings can usually be altered programmatically, through the use of appropriate escape sequences, as defined for each type of terminal.

You may hear the term strap setting used synonymously with device configuration setting. This is left over from a time when changing a device's characteristics meant physically opening its cover and moving a strap from one set of contacts to another. A number of settings are still referred to by their original alphabetic strap designations. For example, how you set the D, G and H straps (Line/Page, InhHndShk and Inh DC2 settings respectively) determines how your terminal will respond to block mode processing.

Certain printer characteristics are also set locally at the device and may also be altered by transmission of appropriate escape sequences. Though printers have no need for all of the control mechanisms that are related to user input, such as echo, or block mode, they do have their own special set of control needs to determine how output appears on the printed page, and to define ways to prevent a loss of data.

An important distinction must be made between the physical setting of the device (what the device does and expects) and the programmatic setting of the ASC software (what the system does and expects). The two settings must agree with each other in order for data transmission to take place. If you programmatically alter the system setting through an intrinsic call, you must also make sure the device's physical setting is changed, either through programmatic transmission of the proper escape sequences, or by sending a message to the terminal operator as a reminder to properly set the device.

For more information on the proper settings for terminals and printers, refer to the reference manuals for each device.

Feedback to webmaster