Centronics Parallel Interface

Introduction

Interface Signal Specifications

Table : Centronics Parallel (Pin Description)

Signal

Pin No.

Return

Pin NO.

Signal Direction Description
1 19 STROBE IN STROBE pulse to read data in pulse width must be more than 0.5 µsec. At receiving terminal the signal level is normally "HIGH"; READ-IN of data is performed at the low level of this signal.
2 20 DATA1 IN  
3 21 DATA2 IN  
4 22 DATA3 IN These signals represent information of the 1st to 8th bits of parallel data respectively. Each signal is at "HIGH" level when data is logical "1" and "LOW" when logical "0"
5 23 DATA4 IN  
6 24 DATA5 IN  
7 25 DATA6 IN  
8 26 DATA7 IN  
9 27 DATA8 IN  
10 28 ACKNLG OUT Approximately 5 µs pulse; "LOW" indicates that data has been received and the printer is ready to accept other data.
11 29 BUSY OUT A "HIGH" signal indicates that the printer cannot receive data. The signals become "HIGH" in the following cases:
  1. During data entry.
  2. During printing operating
  3. In "OFFLINE" state
  4. During printer error status.
12 30 PE OUT A "HIGH" signal indicates that the printer is out of paper.
13 - SLCT OUT The signal indicates that the printer is in selected state.
14 - AUTO

FeedXT

IN With this signal being at "LOW" level, the paper fed one line after printing. (The signal level can be fixed to "LOW" with DIP SW PIN 2-3 provided on the control circuit board).
15 - NC - Not used.
16 - OV - Logic GND level.
17 - CHASIS

GND

- Printer Chasis Ground. In the printer, the chassis ground and the logic ground are isolated from each other.
18 - NC - Not used.
19-30 - GND - "Twisted-paper return" signal; GND level.
31 - INIT IN When the level of this signal becomes "LOW" the printer controller is reset to its initial state and the printer buffer is cleared. This signal is normally a "HIGH" level, and its pulse width must be more than 50 µsec at the receiving terminal.
32 - ERROR OUT The level of a signal becomes "LOW" when the printer is in "PAPER END" state, "OFFLINE" state and "ERROR" state.
33 - GND - Same as with pin number 19 to 30.
34 - NC - Not used.
35 - - - Pulled up to +5V dc through 4.7 K-Ohm resistance.
36 - SLCTIN IN Data entry to the printer is possible only when the level of this signal is "LOW". (Internal fixing can be carried out with DIPSW - 1-8. The condition at the time of shipment is set "LOW" for this signal).

Notes:

  1. "Direction" refers to the direction of signal flow as viewed from the printer.
  2. "Return" denotes "twisted-pair" return and is to be connected at signal ground level.

With wiring the interface, be sure to use a twisted-pair cable for each signal and never fail to complete connection on the return side. To prevent noise effectively, these cables should be shielded and connected to the chassis of the system.

The reason for the individual ground returns is to reduce the chance of picking up electrical noise in the lines. While making an interface cable, these ground return lines should be connected together and to the ground at the microcomputer end. In order to prevent large noise currents from flowing in the logic ground wire, logic ground (pin 16) and chasis ground (pin 17) should only be connected together in the microcomputer. This precaution is necessary whenever any external device/system is connected to a microcomputer.

  1. All interface conditions are based on TTL level. Both the rise and fall times of each signal must be less than 0.2 µsec.
  2. Data transfer must not be carried out by ignoring the ACKNLG or BUSY signal. (data transfer to the printer can be carried out only after confirming the ACKNLG signal or when the level of the BUSY signal is "LOW")

TABLE 2.1 shows the pin connection and description for Centronix-type parallel interface between IBM PC and EPSON LX 100 printer.

Timing Diagram

Assuming the printer has been initialized, one first checks the "BUSY" (figure 1) to see if the printer is ready to receive data. If this signal is low, indicating the printer is not busy, an ASCII code is sent on the eight parallel data lines. After at least 0.5 µsec the STROBE is asserted low to tell the printer a character has been sent.  The STROBE causes the printer to assert its BUSY signal high. After a minimum of 0.5 µsecs the strobe signal can be deasserted.  The data must be held valid on the data lines for atleast 0.5 µsec after the STROBE is made high. When the printer is ready to receive the next character, it asserts its ACKNLG low for about 5µsecs.  The raising edge of the ACKNLG tells that it can receive the next character. The rising edge of the ACKNLG resets the BUSY. BUSY being low is another indication that printer is ready to accept the next character. Some systems use the ACKNLG signal for the handshake and some systems use the BUSY signal.

A typical circuit of interfacing centronix parallel printer to 8255A on SDK86 kit is shown in Figure 2.

 Main line and interrupt based printer drive program algorithms will be discussed now.

Mainline Algorithm for Printer Driver Initialization

Setup Control Block:

            Word for storing pointer to ASCII string

            Word for number of characters in string

To send ASCII string:

        Read printer status from port

       If error then

                Send error message

               Exit

Printer Driver Procedure Algorithm

            Disable 8255A interrupt request output

CENTRONICS-EPSON

Descriptor 8-Bit Parallel, Monodirectional

De Facto standard for Printers, But tend to be replaced by RS232

Sponsor Centronics 1975
Standard None
Address Space Not Applicable
Data format 8-Bit
Transfer Type Write Only
Timing Handshake with an Ack Pulse at the end of the cycle, a Busy signal is provided for inhibiting transfer of all characters but DC1
Arbitration --
Interrupts --
Error Handling --
Other Functions Paper Error (Printer Output) Selected (Printer Output) Fault (Printer output), Reset (Printer Input)
Connector 36-Pin Amphenol 57-40360-12-D256 Male Connector on equipment chassis female to Female connecting straight cable

                    STB 1 .  . 19 GND

                    DA0 2 .  . 20 GND

                    DA1 3.   . 21 GND

                    DA2 4.   . 22 GND

                    DA3 5.   . 23 GND

                    DA4 6.   . 24 GND

                    DA5 7.   . 25 GND

                    DA6 8.   . 26 GND

                    DA7 9.   . 27 GND

                  ACK10.   . 28 GND

                BUSY11.   . 29 GND

PAPER ERROR12.   . 30 GND

       SELECTED13.   . 31 RESET

                    OV 14.   . 32 FAULT

                    NC  15.   . 33 GND

                     OV 16.    . 34 NC

              CHASIS17.    . 35 NC

                   + 5V 18.    . 36 (DEMAND)

SOMET MES, A 23-pin subminiature D-type Connector isused with an unpredictable pinout.

Bus Length 5M
Driver Outputs: 7406 or equivalent

Inputs : 7414 or equivalent with 1 K Ohms Pull-U (RC Filter on STB)

Speed 100 MB/S
Options -
References Epson and most other Manufacturers
Remarks Initially used in several printer from centronics, the interface has been better defined by Epson