COSC 456 Lesson 19: Laboratory 5
IBM PC Interfacing The parallel port is a 25-pin DB-25 (D-shaped) connector accessible from the back of the PC The expansion slot provides access to the address bus, data bus, several IRQ lines, clock signal, and several control lines
Parallel Port (DB-25 connector)
DB-25 Pin Functions Pins 2 through 9 are the 8 data pins D0 through D7. Data Port = “base” address of the printer port(378) Pins 18 through 25 are ground pins Pins 1, 14, 16, and 17 are -strobe, -auto feed, initialize, and -select input. These are all outputs to the printer and accessed via the Control Port whose address is base + 2 Pins 10, 11, 12, 13, and 15 are -acknowledge, busy, paper empty, select, and -error. These are outputs from the printer and accessed via the Status Port whose address is base + 1.
Moving data IN and OUT INReads in the data from a peripheral device (I/O) OUTSends data out to a peripheral device(I/O) MOV sends data to and from memory
IN and OUT the right way... IN AL, 40HData from port 40h is read into AL OUT 40H, ALData from AL is sent to port 40h IN AL, 340HIllegal because 340 is > FF MOV DX, 378 Data from port 378 is read into AL IN AL, DX OUT DX, ALData from AL sent to port 378
Memory Map FF1KInterrupt Vectors A BFFFF128 KVideo RAM B8000-BBFFF16KCGA A0000-AFFFF64KVGA FF1/4 KBIOS Data Area F FFFFF64 KBIOS ROM
I / O Map FDMA controller8237A PIC1 (master)8259A Keyboard controller Real-time clockMC DMA page register74LS612 1F0-1F8Hard-disk controller Game adapter FParallel "printer" port 2 (LPT2) FPrototype adapter for interfacing FParallel "printer" port1 (LPT1) 3D0-3DFCGA / VGA controller 3F0-3F7"Floppy" disk controller 3F8-3FFSerial port1 (asynchronous: COM1)