Using an MSG EQ7 with LM3916, is it possible? - Page 1
Forum section: electronics / beginners

author: ChainReaction
author_rank: Newbie
timestamp: July 23, 2017, 04:05:03 pm
content: Hi there!I'm trying to build an interesting chip-only project. I came across these MSG EQ7 equalizer chipshttps://www.sparkfun.com/products/10468and thought it would be fun to use them in an LED graphic equalizer. For the sake of variety I would like to avoid using a microcontroller (as every project I've done so far has been in some way arduino powered) and use DIP style chips instead. After looking about I found thishttps://www.sparkfun.com/products/retired/1269510-LED driver IC, the LM3916 which reads an analogue signal and powers on/off the LEDs depending on the strength. The EQ7 has 7 different frequency bands, changing once per clock-pulse, and this would be connected to 7 LM3916's each driving one column of an LED equalizer display. I figured this would work great but there seems to be a snag - the EQ7 outputs in strobe/multiplex from a single pin and the LM3916 has no enable pin, making selecting the appropriate LM a problem.I've been struggling to think of how I could interface the two chip types and sort of hit a wall. Does anyone know a way I could switch through the different LM chips in synch with the frequency select clock pulses of the EQ7? Can it be done? Or do I just need to suck it up and put a microcontroller in the middle?Thanks all.

author: Zero999
author_rank: Super Contributor
timestamp: July 23, 2017, 04:25:57 pm
content: The LEDs are common anode so they could be disconnected from +V or connecting pin 4 to a higher voltage than the reference on pin 7 would turn all the LEDs off.Disclaimer: I have no experience with the LM3916. I've just quickly scanned the data sheet.

author: ChainReaction
author_rank: Newbie
timestamp: July 23, 2017, 05:29:46 pm
content: Thanks, but it's not so much controlling the LEDs thats the problem. The problem is the EQ7 gives out an analog value on its output, for each of 7 frequency bands. I need to be able to send the signal from the first frequency band to the first LM3916, then wait for a clock/strobe pulse, then send the signal from the second band to the second LM and so on. I need the LEDs to remain lit until the next signal arrives. Essentially multiplexing (I hope I'm using the right term) the 7 LM's from one EQ7.I think a better way of asking is how would I isolate or filter the EQ7 signal to the correct LM, instead of sending every signal to every LM?

author: capt bullshot
author_rank: Super Contributor
timestamp: July 23, 2017, 05:49:11 pm
content: I think the filter IC is intended to be used with any kind of LED stripe display - just like the LM3916 - in an multiplexed fashion:You've one filter IC and one bargraph IC, connect the analog output to the bargraph input, then have a clock generator to clock the filter IC output and drive a counter (counting from zero to 6) to address one of 7 different LED bars.The LM3916 input gets presented the 7 levels in a sequence, its output is then routed to the correct set of LEDs.Easiest way to do this would be to connect all the LEDs anodes in parallel per frequency bar and switch them with the 1 of 7 decoded output of the counter. The cathodes of each level indicating LED would be paralleled to the LM3916 outputs (creating a LED matrix).Otherwise, you can do this by using 7 LM3916 ICs, and 7 analog sample/hold circuits strobed by the counter outputs.

author: Zero999
author_rank: Super Contributor
timestamp: July 23, 2017, 05:52:02 pm
content: Quote from: ChainReaction on July 23, 2017, 05:29:46 pmWhy do the LEDs need to remain lit?Drive all the LM3916s from the same signal and enable the appropriate one for each frequency band, they will appear to be lit simultaneously, due to persistence of vision, if the multiplexing frequency is high enough. They will appear to be dimmer, than they would if they were illuminated continiously, but that can be compensated for by increasing the forward current.

author: ChainReaction
author_rank: Newbie
timestamp: July 23, 2017, 06:28:50 pm
content: QuoteYeah - this is exactly what I'm intending, the bit I can't work out is how to enable the appropriate one. I guess you're suggesting this is done by supplying the 6 I don't want selected with a higher reference voltage like you mentioned before? If so how would I supply this voltage in a timely fashion? Apologies if I didn't get your meaning, and thanks, will try this.QuoteThis was one of the ways I was thinking of doing it - but couldn't figure out how a counter could control the appropriate LEDs. I'm not sure I fully understand how to 'switch them' using the counter though as you described.

author: Zero999
author_rank: Super Contributor
timestamp: July 23, 2017, 06:44:57 pm
content: You could use the 74HC4017 or 74HC4022. Connect the LED anodes to the output of the counter, so the output has to be high to enable the LEDs.