Continue to Site

Using Shift Register

Status
Not open for further replies.

toyracer

New Member
My class project is to determine the specs and design a circuit using a mystery chip given to us. We got a MC54HC595 which turns out to be a 16 pin Shift Register.

I've searched the archives for a circuit that will help my understanding of this chip but didn't come up with much. My deadline is by Friday. Can anyone help me please?

Thanks,
Toyracer

shift registers

54 is the military/industrial prefix for 74xx logic. It's guaranteed to work over a greater temperature range. When doing a web search, delete the prefix and search for the part # and a short description. Ex: "595 shift register". Phillips has datasheets for most standard logic parts.

Thanks for the info, laroche. Do you have any simple schematics where this chip is used in practice? I guess I would have to display its use by outputing to LEDs? Thanks again.

'595

The chip is often used for output expansion in a microcontroller environment. Probably the most interesting thing you can do with a shift-register is to turn it into a "maximal-length" linear feedback shift register by adding an exclusive-OR/NOR gate. Given "n" bits, it can sequence through "2n-1" unique states (All "0"s is the excluded state with an XNOR gate, all "1"s with an XOR). An 8-bit LFSR would require a 4-input X(N)OR gate. Interesting note - a '595 can emulate a 9-bit LFSR (with one inaccessible bit) using a single 2-input gate. That's an interesting project, I'll leave it to you.

For a simple demonstration, tie the clock pins together, and use bits 5 and 6 as the feedback terms (0-7 being the bit numbers, this gives a count of 127 and will drive the LEDs with a pseudo-random pattern. Since the output register is always one clock behind the shift register, outputs Q4 and Q5 correspond to bits 5 & 6). The reset state of the SR is all "0"s, so use a XNOR gate as the feedback element. The first two clocks after a chip reset produce all "0"s on the output pins, then the outputs will go through the normal LFSR sequence.

There is a lot of info concerning LFSRs on the web. You can start here:

https://www.xilinx.com/bvdocs/appnotes/xapp210.pdf

I will try and experiment with what you suggested. I found out that I have plenty of time still to do the project...it got moved to Wednesday.

Thank you very much for your insight!

correction

You're welcome. There was an error in my last post, which I've corrected.

Status
Not open for further replies.

Replies
18
Views
4K
Replies
12
Views
2K
Replies
4
Views
1K
Replies
15
Views
3K
Replies
73
Views
15K