Printer Port Circuit to see the inputs logic state and drive a few outputs. The preset control program helps test out the circuit operation. Use safe 5V Levels.
Simple Printer Port Interface, Input-Output – del20005
So i made some example circuits and VB programs for students. A demo Milli Volt source, Digital Voltmeter and Logic Analyzer examples for learning, are on these pages. I have tried to derive power from PC itself in this circuit, Care should be taken not to short circuit or apply any voltages above 5V to PC Port Pins.
74HCT373 is the only chip used to interface the real world with the PC Parallel port. The Inputs to this chip are protected with Resistors and Zeners. 3 outputs of PC are also monitored using LEDs. This gives you a IO interface for experimenting. Below is a Preset counter simulation that you can use with this circuit for testing. Schmitt Triggers and Signal Conditioning may be required for Noisy and Non-Sandard Inputs.
Some outputs are via Dual Differential Line Driver type DS8830. This device will interface with standard TTL systems.
The differential outputs are balanced and are designed to drive long lengths of coaxial cable, strip line, or twisted pair transmission lines with characteristic impedances of 50 ohms to 500 ohms. Differential transmission is superior to single wire transmission in that it nullifies the effects of ground shifts and noise signals which appear as common mode voltages on the transmission line.
Mixed and Interface Circuits
If the signal voltage at the end of the line is found to be of insufficient magnitude then the following circuit may be used (at the recipient equipment end) to boost the levels.
This circuit is a small representation of a very low cost printer sharer. It has no Active Devices only diodes.
Pot the product in epoxy with a black dye, they serve the purpose. Output impedance of this circuit is high, sink is 220K source is 3.9K+ so use some buffers or drivers at Output. If Buffers are omitted, then fix this unit on the printer port connector of Computer.
when Enable A is at float-high impedance or low the output O1-O4 is not influenced by A1-A4 inputs. If Enable A is made logic high or 5V then A1-A4 is available at O1-O4.
By turning Enable A or Enable B high, you can route the data A1-A4 or B1-B4 to the output O1-O4, you can also mix data and you can expand to any number of input sets or data width. 1N4148 is fast, 4nS, that makes this data switch quite fast. This circuit cannot drive long printer cables without drivers. They will load the output.
I had to once interface an high voltage circuit to PC, The uC had to communicate thru RS232–Comm port–Serial Port.
Part of the 80C31 8051 SBC
Even though i had isolation at the sensors and actuators to make doubly sure the PC also has been isolated. There are chips that are available for this purpose, The circuit above is built with discrete and passive components except for the opto 4N35. You can use MCT2E and CNY17-3 Optos too. For MCT2E some tweak may be needed as current transfer ratio is 20, for the other two CTR is 100 so above design will work.
The circuit derives power from PC but does not load the PC supply. Any voltage above 5V applied to the PC connectors may lead to damage of motherboard in PC. Old PCs were more vulnerable but PCs today maybe a bit rugged at the Ports. Due to internal current limits and clamping.
The VCC, VDD and Agnd are derived from PC no other power needs to be applied on PC side of opto. On uC side of opto the uC power supply lines +5 and gnd has to be used. There is no copper link between the two sides and depending on opto a 1KV isolation is possible if PCB is well designed. The PCB should show the visual isolation above and components should be laid on separate areas of PCB to prevent creepage.
The LEDs are to indicate the port activity Rx and Tx, they are not required once testing is over. The circuit can be simpler, but this worked for me and it is not tested at very-high buad rates.
The levels of RS232 are not TTL like 0-5 we have both polarities +10 and -10. The circuit has to change that to drive the Opto Leds.
RS232 software. Understanding RS232 Serial Port Communication.
Using this circuit on Printer Port, one could drive 256 Relays or 16K LEDs as Dot Matrix display. It can be used to drive a Large size multiplexed LED dot matrix display or Latched Relay-Solenoid-Motor-Lamp Array Drivers.
This circuit can be modified for a Static drive output or a fast changing output like a Waveform Generator. You can also make it a 16 Bit waveform generator. The frequency limited to the speed of the port or a fraction of it, depending on 8bit, 16bit or 32bit.
Now I have Some Explaining to do. Latch the U7 with a 8 Bit Data to address the device you want to talk to. So one among the 32 Output Devices can be Selected by a combination of G1-G2 of U5-U8 and U7 8 Bits, Split into Two Nibbles for Upper and Lower 16 Devices. That means 16 * 2 = 32 Devices of 1 Byte each,. 32 * 8 = 256 if my calculations are correct. Please verify.
One of the decoders U5 or U8 decode their respective nibble and output a Low on Selected device to Latch Data on the Chosen one (74HCT373). Why HCT ? Speed is good, low power and CMOS ! and works with TTL too. It Interfaced well for me on a Card with Both TTL and CMOS levels, with a Fast uC.
The 74HCT373 outputs are current amplified and isolated by darlingtons and optoisolators. Both source and sink examples shown. This circuit was not tested and documented properly. So there may be things missing. It is just a Concept design..
Printer Port 256 Relays 16K Dot Matrix – del20021