📄 parallel port background.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0032)http://www.fapo.com/porthist.htm -->
<HTML><HEAD><TITLE>Warp Nine Engineering - The IEEE 1284 Experts - Parallel Port Background</TITLE>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="Background information on the parallel port." name=description>
<META content="Warp Nine Engineering's Parallel Port Background Page"
name=abstract>
<META content="parallel port, background, history, printer port" name=keywords>
<STYLE type=text/css></STYLE>
<META content="MSHTML 6.00.2900.3132" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff leftMargin=0 topMargin=0
onload="if (self != top) top.location = self.document.location" marginheight="0"
marginwidth="0">
<DIV style="WIDTH: 1284px; HEIGHT: 235px" align=left><!-- #BeginLibraryItem "/Library/Top Nav w logo.lbi" -->
<TABLE height=1 cellSpacing=0 cellPadding=0 width=597 border=0>
<TBODY>
<TR vAlign=center align=right>
<TD bgColor=#000000 height=9>
<DIV align=left><IMG height=52
src="Parallel Port Background.files/toplogo3.gif" width=1280
border=0><BR><IMG height=15
src="Parallel Port Background.files/spacer.gif" width=14 border=0><A
href="http://www.fapo.com/index.html"><IMG height=24
src="Parallel Port Background.files/home.gif" width=24 border=0></A><IMG
height=15 src="Parallel Port Background.files/spacer.gif" width=14
border=0><IMG height=15 src="Parallel Port Background.files/spacer.gif"
width=31> <IMG height=24 src="Parallel Port Background.files/button.gif"
width=444 useMap=#buttons border=0> </DIV></TD></TR></TBODY></TABLE><MAP
name=buttons><AREA shape=RECT coords=339,-1,393,22
href="http://www.fapo.com/search.htm"><AREA shape=RECT coords=275,1,337,22
href="http://www.fapo.com/support.htm"><AREA shape=RECT coords=203,1,273,24
href="http://www.fapo.com/fpcmail.htm"><AREA shape=RECT coords=136,0,203,23
href="http://www.fapo.com/ieee1284.htm"><AREA shape=RECT coords=69,0,131,23
href="http://www.fapo.com/fpcorder.htm"><AREA shape=RECT coords=0,0,65,23
href="http://www.fapo.com/product.htm"></MAP><!-- #EndLibraryItem -->
<TABLE height=256 cellSpacing=0 cellPadding=0 width=595 border=0>
<TBODY>
<TR>
<TD vAlign=top align=left width=56 bgColor=#ffffff height=297>
<P><IMG height=77 src="Parallel Port Background.files/spacer2.gif"
width=55></P>
<P> </P></TD>
<TD vAlign=top align=left width=1 bgColor=#ff0000 height=297> </TD>
<TD vAlign=top align=left width=9 height=297><IMG height=15
src="Parallel Port Background.files/spacer.gif" width=9> </TD>
<TD vAlign=top align=left width=529 height=297>
<DIV align=center>
<CENTER>
<P> </P>
<H1 align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1><BR><FONT size=2><B>Parallel Port Background</B></FONT></FONT></H1>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>When IBM introduced the PC, in 1981, the parallel printer port was
included as an alternative to the slower serial port as a means for
driving the latest high performance dot matrix printers. The parallel port
had the capability to transfer 8 bits of data at time whereas the serial
port transmitted one bit at a time. When the PC was introduced, dot matrix
printers were the main peripheral that used the parallel port. As
technology progressed and the need for greater external connectivity
increased, the parallel port became the means by which you could connect
higher performance peripherals. These peripherals now range from printer
sharing devices, portable disk drives and tape backup to local area
network adapters and CD ROM players. </FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>The problems faced by developers and customers of these peripherals
fall into three categories. First, although the performance of the PC has
increased dramatically, there has been virtually no change in the parallel
port performance or architecture. The maximum data transfer rate
achievable with this architecture is around 150 kilobytes per second and
is extremely software intensive. Second, there is no standard for the
electrical interface. This causes many problems when attempting to
guarantee operation across various platforms. Finally, the lack of design
standards forced a distance limitation of only 6 feet for external cables.
</FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>In 1991 there was a meeting of printer manufacturers to start
discussions on developing a new standard for the intelligent control of
printers over a network. These manufacturers, which included Lexmark, IBM,
Texas Instruments and others, formed the Network Printing Alliance. The
NPA defined a set of parameters that, when implemented in the printer and
host, will allow for the complete control of printer applications and
jobs. </FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>While this work was in progress it became apparent that to fully
implement this standard would require a high performance bi-directional
connection to the PC. The usual means of connection, the ordinary PC
parallel port, did not have the capabilities required to meet the full
requirements or abilities of this standard. </FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>The NPA submitted a proposal to the IEEE for the creation of a
committee to develop a new standard for a high speed bi-directional
parallel port for the PC. It was a requirement that this new standard
would remain fully compatible with the original parallel port software and
peripherals, but would increase the data rate capability to greater than
1M bytes per second, both in and out of the computer. This committee
became the IEEE 1284 committee. </FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>The IEEE 1284 standard, "Standard Signaling Method for a
Bi-directional Parallel Peripheral Interface for Personal Computers", was
approved for final release in March of 1994. </FONT></P>
<H3 align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>The Parallel Port -- an Overview</FONT></H3>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>The parallel port, as implemented on the PC, consists of a
connector with 17 signal lines and 8 ground lines. The signal lines are
divided into three groups: </FONT>
<DIV align=left>
<UL>
<LI><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>Control (4 lines) </FONT>
<LI><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>Status (5 lines) </FONT>
<LI><FONT face="Arial, Helvetica, sans-serif" color=#000000 size=1>Data
(8 lines) </FONT></LI></UL></DIV>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>As originally designed, the Control lines are used as interface
control and handshaking signals from the PC to the printer. The Status
lines are used for handshake signals and as status indicators for such
things as paper empty, busy indication and interface or peripheral errors.
The data lines are used to provide data from the PC to the printer, in
that direction only. Later implementations of the parallel port allowed
for data to be driven from the peripheral to the PC. </FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>Table 1 identifies each of these signals and gives their Standard
Parallel Port (SPP) definitions. The signals within these groups are
assigned to specific bits within the registers that make up the
hardware/software interface to the parallel port. The parallel port is
mapped into the I/O space of the PC. The registers consist as a contiguous
block of 3 registers starting from the parallel port's base address. These
ports are commonly referred to as the LPT ports and have the familiar I/O
base addresses of 3BCh, 378h and 278h. Newer implementations of the
parallel port, that support the advanced modes of the 1284 standard, use 8
to 16 registers and are located at I/O addresses 378h or 278h, or are
re-locatable, as in the case of a Plug and Play compliant parallel
adapter. </FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>Table 2 identifies the registers for the standard parallel port.
The basic method of transferring data to the printer using this port is
described in the section entitled "Compatibility Mode." </FONT></P>
<H4 align=center><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=1>Table 1 -- SPP Signal Definitions <SUP>(1)</SUP></FONT></H4>
<DIV align=left>
<TABLE border=1>
<TBODY>
<TR>
<TH><FONT face="Arial, Helvetica, sans-serif" size=2>Group</FONT></TH>
<TH><FONT face="Arial, Helvetica, sans-serif" size=2>SPP
Signal</FONT></TH>
<TH align=middle><FONT face="Arial, Helvetica, sans-serif"
size=2>In/Out</FONT></TH>
<TH><FONT face="Arial, Helvetica, sans-serif" size=2>Signal
Description</FONT></TH></TR>
<TR>
<TD><FONT face="Arial, Helvetica, sans-serif"
size=1>Control</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif"
size=1>nSTROBE</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Out</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Active low.
Indicates valid data is on the data lines.</FONT></TD></TR>
<TR>
<TD> </TD>
<TD><FONT face="Arial, Helvetica, sans-serif"
size=1>nAUTOFEED</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Out</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Active low.
Instructs the printer to automatically insert a line feed for each
carriage return </FONT></TD></TR>
<TR>
<TD> </TD>
<TD><FONT face="Arial, Helvetica, sans-serif"
size=1>nSELECTIN</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Out</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Active low.
Used to indicate to the printer that it is selected.</FONT></TD></TR>
<TR>
<TD> </TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>nINIT</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Out</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>Active low.
Used to reset the printer.</FONT></TD></TR>
<TR>
<TD><FONT face="Arial, Helvetica, sans-serif"
size=1>Status</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>nACK</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>In</FONT></TD>
<TD><FONT face="Arial, Helvetica, sans-serif" size=1>A low asserted
pulse used to indicate that the last character was
received.</FONT></TD></TR>
<TR>
<TD> </TD>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -