![]() |
|
||
|
|||
General description
Initially it was placed to the parallel port in the card of the
“printer adapter of IBM PC”, or also with the card of the “monochrome monitor ”. With the arrival from clones to the market, it is created a
Multi IO Controller (Multi I/O) where settle disk controller, Serial
ports, games port and the parallel port. By now the parallel port is included commonly in the motherboard of the computer (MotherBoard). However, the connection of the port with the external world has not undergone modifications. This port uses a female connector DB25 in the computer and a special connector male
Call Centronic that has 36 pins. It is possible to connect the DB25 of 25 pins to the Centronic of 36 pins since near half of the pins of the Centronic they go to
ground and they are not connected with the DB25.


The parallel port is formed by 17 lines of signals and 8 gorund lines . The lines of signals are formed by three groups:
4 Control lines
5 Status lines
8 Data lines
In the original design the control lines are used for the interface, control and interchange of messages from the PC to the printer.
The status lines are used for interchange of messages, indicators of state from the printer to the PC (lack paper, occupied printer, error in the printer).
The data lines only provide the data of impression of the PC towards the printer and in that direction. The new implementations of the port allow a bidirectional communication by means of these lines.
Each one of these lines (control, state, data) can be referenced of independent way by means of a registry.
The records of the parallel port
Each record of the parallel port is pointed by an
address. The parallel port has three records: data record status record control record The next table shows the relation that exists between the physical lines of the connector of the PC and the
Records. General table of the parallel port
A data in high
is a 1, a data in low is a 0The input and output are from the point of view of the PC
The parallel port schematically, is described next. Note the connection to the ISA Bus in the left part and the records in the right part.

The parallel port originally was formed by the following components:
1 Latch to handle the data record
1 Buffer to control the feedback of the data record
1 Buffer to handle the status record
1 Latch to handle the control record
1 Buffer to control the feedback of the control record
1 Multiplexer to addres the ports in ISA Bus
1 bidirectional Driver to connect with ISA Bus
Other criteria search:
RS-232, Interfaces, Diodes, Leds, Latches, Buffers, relay, transistors, real time, temperature, sensors, Pascal, Delphi, Assembler
Operation
Explanation of the operation in the BIOS and the MSDOS
IBM specified base addresses for the standard parallel port (within the address space of Input/output of 80x86). The printer adapter could use the base address 3BCh, or later 378h or 278h.
BIOS (Basic Input Output System) of IBM makes in the moment of POST (Power On Seft Test) a table in the space of the main memory (ram) for 4 base addresses of parallel port of printer, these stores like 4 bytes beginning with the memory direction 408h. During the starting, the BIOS verifies if there are parallel ports in the base addresses 3BCh, 378h, and 278h, in that order, and stores to the base address of which they have been found in consecutive positions of the table. The positions that are not used can be in 0, or as some BIOS do it, they place the direction to him of the first found port.
Some programs can ignore this table, but this is used at least by the own BIOS (by means of INT 17 of printer ES) and by the MSDOS.
The BIOS detects these ports writing AAh to the registry of data (in the ES direction Base + 0), and soon if in the registry of data AAh is ***reflxed mng. It means that there is a port.
Normally the allocation of addresses are as follows:
The references to each record of the port are made of the following form:
Base Address (data) =base+0
status=base+1
Control=base+2
For example, if we found that the base address is 378h, then the directions of the data record, status and control will be:
Base (data) =378h
Status=379h
Control=37Ah
Each one of them allows to access to the following bits (described in the general table):
Base (data) =D0, D1, D2, D3, D4, D5, D6, D7
Status=S3, S4, S5, S6, S7
Control=C0, C1, C2, C3
Quetions? pparalelo@hotmail.com