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:
|
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:
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.
TABLE 2.1 shows the pin connection and description for Centronix-type parallel interface between IBM PC and EPSON LX 100 printer.
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.
Word for storing pointer to ASCII string
Word for number of characters in string
Read printer status from port
If error then
Send error message
Exit
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 |