Shift register problem

Hi,

I am using shift register ST M74HCT164B1. It is 8 bit serial-to-parallel shift register. I connected it to 7 segment display. It works, except output is around 2.5V. So the LCD color is orange instead of yellow. I checked LCD - if i give it 4.8V it works OK.
I connected as follows:
1: VCC
2: data
3-6 output
7: ground
8: clock
9: VCC
10-13: output
14: VCC

Do you have current-limiting resistors on the 7-segment display? You didn't post a datasheet, but many shift registers and similar ICs have a fairly limited capability to supply current. As a result, the voltage output could drop significantly with current load.

The part is only spec'ed for 4mA
http://www.masterdistributors.com/products/m74hct164b1
Drawing more will impact the out[put voltage.
If you LEDs need 20mA for full brightnes, this is probably not the part to use.

Are you using common anode or common cathode display?
Get some current limit resistors too so you don't damage the LEDs.

Thanks,

Should i just power LCD separately?

If I remove LCD from protoboard, the output of IC seems OK.

BR,ivan

Should i just power LCD separately?

What LCD is this - LCD Liquid Crystal Display
You are talking about a LED display - Light Emitting Diode.

Does the voltage drop when you connect it? If so you power supply needs to be able to supply more current.

Even without LCD I get only 2.5V.
So the problem is wireing of SHIFT register. What am I missing. Do I need some pull up resistor or what?

Even without LCD I get only 2.5V.

Is that on the output of the shift register with nothing else attached?
Is it with an LED attached but no current limiting resistor?

I think you might be missing that you are using the wrong chip.

I just check this chip - M74HCT164B1 and download the datasheet. shiftOut() will work but, that chip don't have a latch and need to clear / reset the internal Flip Flop before this chip work properly. It mean after a shiftOut() is being complete, the output from D7 to D0 will be all 1 or 0. Not like 10011001 for example, but more like 00000000 or 11111111. In my opinion. You need the 74HC595. It does have a latch and the example code use a digital pin to use that latch so the bits stay there.

About the so call "display"... no datasheet...no picture of the so-call "display"... it will be hard to help... sorry

1: VCC
2: data
3-6 output
7: ground
8: clock
9: VCC
10-13: output
14: VCC

What is that ? Is it the chip pinout ? Let assume it is... Almost correct connection...except pin 9. That pin goe to RESET of the Arduino. A reset / clear will "set" the Flip-Flops at start-up. I mean when the Arduino is being power up.

And don't forget the limiting resistors. A value of 470 ohms should be fine. It will be a bit dim, but it will work. Ig you want REALLY bright... use a transistor circuit for each segments or ULN2804 driver

. It mean after a shiftOut() is being complete, the output from D7 to D0 will be all 1 or 0. Not like 10011001 for example, but more like 00000000 or 11111111

No that is not correct, you will still get the bit pattern produced correctly. But when shifting out a bit pattern the outputs will briefly have false states on them as the pattern is shifted past each output.

No that is not correct, you will still get the bit pattern produced correctly. But when shifting out a bit pattern the outputs will briefly have false states on them as the pattern is shifted past each output

Sorry about that. Thanks for clear that out. By thinking about it, it make sense now. Sorry Grumpy_Mike :blush: