LCD and 7 Segment Help

Ok, im looking to build a project that will have both an LCD and 13 or so 595 Shift registers running 7 segments. I plan to use an UNO or NANO if the lcd/7seg can play nice togeather if not i may have to use 2 micro's.

Im wondering if its even possible to do it? The LCD will be there to control menu's and I might put some simple animations on it while its not being used as a menu.
Here is a link to the discussion im having on Adafruit but Im going beyond anything they do there.

http://forums.adafruit.com/viewtopic.php?f=31&t=27173&p=139479#p139479

Im going to use the Graphic KS0108 LCD 128x64 that Adafruit has, I noticed it uses SPI just like the shift registers so im not sure if it will work out well or not :frowning:

All that can be done, the only question is how fast do you need to do it?

im not sure if it will work out well or not

SPI is multi-slave, you normally just need a separate select signal for each device. If the LCD doesn't have a CS/SS input you will have to use shiftOut() for it or the 595s and SPI for the other.

BTW there are better chips to use than the 595.


Rob

I just read the Adafruit thread more closely.

I gather you want to count people in/out of the library? There are a lot of pitfalls in counting people entering/leaving a room and I'm not convinced it can be done 100% reliably.


Rob

Atm the librarian is having to do the counting. They aren't after a perfect count, just a ballpark of the usage in the library.
What specific chips would be better then the 595? Are they cheaper?

OK that helps if you can afford to miss a few counts.

The 595 will not drive LEDs directly so you have to add transistors or driver chips and a resistor for every LED. It get real messy real quick.

Chips like the TLC5916 and TLC5927 have built in constant current sources so you only need a single resistor per 8 (or 16) LEDs and no extra drivers. That's a lot better.

Even better are chips like the AS1108 that MUX the LEDs. The AS1108 will drive 4 digits with nothing extra but a single resistor to set the current. This chip (and the others above) can be daisy-chained so you can drive as many digits as you like with a single SPI port. You would need 4 of these to get 16 displays.

MAX7219-MAX7221s (and many others by Maxim) will do 8 digits but can't be daisy-chained so you need multiple chip-select pins, one for each chip but then only two chips will do 16 7-seg displays.

As for the prices, you'll have to look that up but 3-4 of these chips has to be cheaper that 13 shift regs 13 driver chips and 13x7 resistors.

You can get prices from sites like this

If the 7-seg display have to be large (ie a few inches tall) then that may change things.


Rob

A potential pitfall for the 7-segment displays is that you shiftOut() and immediately engages the latch to enable output. You need to pause momentarily since you will have a long chain of shift registers, the propagation time all adds up so you can't immediately latch. If you do, the last few bits will not have enough time to receive shifted in data and just won't respond. This happens if you have a large LED cube or something else with many shift registers. You can read the spec sheet for propagation delay and multiply with number of shift registers you have to find how long the wait is. Should be very short but can't afford to not wait.

Hmmm.... (looks over at the half used package of 10 MAX7219CNG he bought last year) :astonished:
BTW they can be daisy chained, I have 5 on an Ardweeny running 5x 8x8 matrix's, cascading. TY for reminding me about them lol.
Im looking to use the 0.8' Blue 7 Segment displays, from what I can tell they are 3v 160ma, that's kind of high considering there size? I doubt they actually need that much to run.... I hope lol.

BTW they can be daisy chained

Yes, I missed the DOUT pin.

160ma

Not per segment surely, maybe for all eight segments.


Rob