Correct wiring

Hi I’m in the middle of setting up a new circuit for my st7920 display, I have a few questions about the correct way to do things. Any advice is helpful.
My first design ran 2 x 74HC595 + ST7920 all off the 5v pin, are logic chips enough to warrant me using a power supply, I’m adding a 74HC165N ( PISO Register ), a 74HC04N ( Hex inverter ), and a 74HC51B1 ( AND/OR invert gate ).
They are only driving arduino pins and a shift register OE pin, what I would consider small loads, but not sure.

The datasheet for the Hex inverter says to attach each unused input to Vcc or GND for correct operation. Is this a general rule to follow for other logic chips?

The LCD data lines are connected to the 74HC595 register for write mode, and are also connected to the 74HC165N inputs. Will the input register stop the output register from sending data correctly? Resistors on input register maybe? Or are the 165’s inputs not connected until the shift/load (SH/LD) is taken low.

For read mode, the other logic chips trigger the output enable on the output register switching to tri-state mode. Is this suitable to allow the input register to read the data or is some additional protection required?


  1. You don't need an external power supply to drive the logic gates in the setup you describe. The only thing that consumes significant current in that setup is the LCD backlight, which can be connected to Vin through a series resistor if you want to reduce the current draw from +5v.

  2. Yes.

  3. Connecting them to the inputs of the 74HC165 will not affect the outputs. Alternatively, if you can spare 1K of RAM (for a 128x64 display) for a frame buffer, it's much simpler to dispense with the 74HC595 and 74HC165 and use the SPI mode of that display instead, which only needs 2 Arduino pins. The reason for the frame buffer is that you can't read from the LCD in serial mode.

  4. Yes, that is suitable.

Thanks a lot dc42.

I want to use it in 8-bit mode for the read capabilities. Its for use on an UNO, but specifically a learning process as it is really my first project that I have written and built myself. ( not just buttons and LED's ).

I have just tested it in write mode, all good. Will try read from the display tomorrow due to silly work.

My next task is to learn about flip flop circuits, I want to only have to write the enable pin once on the shift register and have a circuit strobe the LCD enable pin. Will save a good number of cycles.

Thanks again.