Introduction Probably the most popular port due to the 8 I/O lines available.
It is not difficult to interface to, but you need to follow a few rules, otherwise you risk blowing up the CIA's in your Amiga. If you follow the information on this page, you should be able to design a system that will safely interface to the Amiga's parallel port. What can I interface to or build? Within reason anything. Stepper motors, sound samplers, multi-purpose I/O cards, relay cards, LCD displays. the only limits are your abilities and some limitations of the parallel port. Can I add a Parallel Port Zip Drive? Not directly. There is not enough control logic on the Amiga's parallel port to drive a Zip drive meant for a PC's parallel port. The hack on Aminet uses the Joystick port for extra control logic. What is the difference between a PC and Amiga parallel port. What are the parallel port limitations?
Let me start by stating that these limitations are ones that I have observed/measured and do not constitute official wording on this matter. Electrical Specifications: Parameter | Logic 1 | Logic 0
| Output drive current | -3.2 mA | 3.2 mA | Logic Levels output |
2.4V min | 0.4V max. | Input logic levels | 2.0V min, 5.5V max | -0.5V min, 0.8V max | Switching speed per pin | 300 KHz | 300KHz |
|
The parallel port is intended to drive at most, 2 TTL load and nothing greater. To drive a device that requires more current, you will need a buffer circuit. Pinout
Pin | Name | Input/Output? | Description | 1 | /STROBE | Output | Used in conjunction with ACK for printer control | 2 |
D0 | Both | Data bit 0 | 3
| D1 | Both | Data bit 1 | 4 | D2 | Both | Data bit 2 | 5 | D3 | Both | Data bit 3 | |
6 | D4 | Both | Data bit 4 | 7 | D5 | Both | Data bit 5 |
8 | D6 | Both | Data bit 6
| 9 | D7 | Both | Data bit 7
| 10 | /ACK | Input | Used in conjunction with Strobe | 11 | BUSY | Both |
Primarily for printer handshaking | 12 | POUT | Both
| Paper out, printer interface | 13 | SEL | Both | Select, shared with RS232 RING | 14 | +5V Pullup | -
| +5V DC @ 10 mA for Pull up resistors only | 15 | n/c | - | Not connected | 16 | /RESET |
Output | Connected to the Amiga's Reset Line | 17-25 | GROUND | - | Signal Ground |
NOTE / = Active LOW Switching speed seems low?
This is the fastest rate at which the author has been able to drive individual pins of the parallel port and still get outputs that meet the TTL thresholds. If you try and switch the pins faster. it might work on your Amiga but not on others, be warned! Buffer your circuits! If you do not buffer your circuits that interface to the parallel port, you risk blowing up the 8520 CIA's. I have provided some tried and tested circuits for interfacing to the parallel port that will reduce the risk of damaging the CIA's. This is especially important if you are driving a large load, like a motor or relay. Can I use the +5V supply on Pin 14 to power my circuits?
No. This is probably the most common interfacing mistake. This pin will only supply 10mA of current, it is intended to provide a TTL voltage reference or to be used for pull up
resistors only! There is not enough current available to power a TTL IC or an LED so do not use it. How should I power my circuit? By using an external +5V supply, take a look at the Author's recommended circuits . Remember to connect the ground line of yourcircuit board to at least one of the Amiga's ground pins (pins 17-22). Also, when using an external power supply and a few logic devices, observe the following recommendations: - Solder 1 by 100nF Capacitor across the power supply pins of each TTL IC.
-
Connect 1 by 100-1000 uF Capacitor across the power leads at the point where the external power supply connects to your PCB. the value depends on the current, the greater the current, the greater the capacitor.
- If the board is more than say, 6cm by 6cm, consider adding some 10uF Capacitors across the power supply at various points across the board.
Following these measures will aid in keeping power supply noise, EM emissions and random switching to a minimum. Enough hardware, what Software do I need? There are some programs that allow you to control the parallel port. There are also programs/routines that allow you to
write your own software. Click here for more details on the software. Any other recommendations? - If you are going to drive a long length of cable, consider using a TTL driver, like a 74244.
- Also consider Transmission lines with long lengths of cable and use the slowest logic possible.
- Always decouple your IC's Analogue and Digital, it helps to reduce power supply noise.
- Always turn off the Amiga before plugging anything into the Parallel port.
By Ian Stedman, 13th November 2001 |