I looked for help in another website but couldn't find an answer, so I will post here.
After making failed circuits in the past, I learned that the cause is that the parallel port was producing "phantom power" (aka powering the circuit). This is because I plugged my circuit into the parallel port before adding the external 5VDC to it.
Based on other ideas, My circuit idea is this:
On power-up, the 555 timer makes the output disable a 3-state buffer for a short period of time so that all outputs are high-impedance. (I forgot pull-up resistors on the buffer outputs). Shortly after, the left-most buffers are always enabled and then data from the port can communicate bidirectionally with the micro-controller. (data returns as parallel port statuses).
The micro-controller is on a separate board and the thick lines represent ribbon cable. VCC is 5VDC and both VCC and GND are connected to the separate board through the same ribbon cable as well.
My question is, will this circuit work well for two lines of bi-directional data between the parallel port and the micro-controller without having any phantom power? (I'll be plugging the circuit into the parallel port first before VCC is connected to any power).
So then after I thought of replacing all those buffers with opto-couplers (2 of 4N25's) with cathode of the input internal diode and emitter of internal NPN in the opto to ground. and anode to data lines from the port. Here's my new circuit:
Am I on the right track with the optocoupler idea or is there something else I need to add? The MSB lines are the DI, DI, and ICLK lines and each one is connected to a 47K pull-up resistor.