Trouble controlling 7 segment LED display

Thread Starter

kosalos

Joined Nov 21, 2016
11
built Ken Stone's Reverb module, CGS95, and found it to be fantastic.
So I used a similar circuit to host the BTSE-99FX that has 99 effects.

http://www.accutronicsreverb.com/main/?skin=sub01_07_2.html

I made some changes to the schematic provided by Accutronics as shown in the attached drawing.

The effects are fantastic, but I'm having trouble with the 2 digit display section.
The segments are being lit with reverse polarity (lit when they should be off and vice versa).

How do I fix this? ledDisplay.png
 

AlbertHall

Joined Jun 4, 2014
12,345
Put an inverter in the data line into the top shift register.
[EDIT] Could be a chip or a transistor.
[Edit2] I just noticed that the shift registers also handle the digit selects so you would need to swap the connections to pins 1 and 15 of the second shift register.
 
Because the LED Display is a Common Anode type the segments with low are lit
If possible change the polarity in Software. Otherwise have an inverter between Data
and DS of U14 and a second inverter between Q7' and DS of U13
 

AnalogKid

Joined Aug 1, 2013
10,986
There is nothing to indicate what your changes are. Generally speaking, you can reverse the polarity of the displayed segments by changeing the display to common cathode. This will require an extra inversion stage in each digit driver.

ak
 

Thread Starter

kosalos

Joined Nov 21, 2016
11
I used this inverter on the Data line to U14.
definitely had an effect, but not correct.
The display now settles to 'blank' + "7." after flickering other segments for a split second whenever the #'s are changed.

I have already swapped lines 1 and 15 (first two bits) of U14, which swapped the digit positions.
Isn't that equivalent to "second inverter between Q7 and DS of U13" ?

thanks guys
 

Attachments

Thread Starter

kosalos

Joined Nov 21, 2016
11
Sorry, the changes I made are the 3906 transistors and the companion resistor values.
Accutronics' original schematic is at the bottom of the web page I linked to.
 

Thread Starter

kosalos

Joined Nov 21, 2016
11
after 4.7K and 10K didn't fix it, I put a 10K pot in series with the data signal instead.
Cannot find a resistance that works. the display is either " 7." or a mess of various segments flickering.
Maybe the Accutronics is continuously sending data, making the circuit extremely sensitive?
Is the 547 an acceptable transistor for the job?
you can tell I don't know what I'm doing..
 

Thread Starter

kosalos

Joined Nov 21, 2016
11
Thanks Albert, I've got the 547 pins correct.
Can't believe how sensitive the circuit is!
Was trying to hold the multi-meter probes onto the pot while I twisted the shaft, and I swear for a
split-second the LED display looked fully correct.
As soon as a removed the probes, the display was back to flickering messed up segments.
 

AlbertHall

Joined Jun 4, 2014
12,345
The multimeter fixing it suggests that it may be a timing problem. Where are the clock and data signals coming from?
[Edit] The inverter has a little time delay to the data signal.
 

Thread Starter

kosalos

Joined Nov 21, 2016
11
Like magicChristian mentioned, it would easier to alter the software.
But it is all locked in to the Accutronics module.
Check out the schematic at the bottom of the website I linked to in the first post.
thanks for the help
 

AlbertHall

Joined Jun 4, 2014
12,345
Your circuit shows no decoupling at the +5V to the digit select transistors - try adding 47uF or thereabouts close to the transistors.
If that doesn't work, try adding about 200pF from either the clock or data to 0V.
 

Thread Starter

kosalos

Joined Nov 21, 2016
11
Tried several different values of caps at the 3 positions you specified.
They altered the segment flickering, but never combined to make a correct display.
I give up. I'm already used to reading a reverse polarity display...
The sounds are fantastic, so I'll still get my money's worth of fun from this module.
thanks
 

takao21203

Joined Apr 28, 2012
3,702
the 1K resistors are unneeded the HC595 have equivalent resistance of about 150 Ohms. Also the LED is not a complete short to GND.

Instead the transistors use a FDV301 BSS138 or 2n7002 you dont need the base resistors either

If you want to keep the circuit just insert inverters (hex inverting buffer = 6x inverter in one IC).

It could be easier to drive the LED display directly with a 16F54, only one IC required.
Or a TM1637 they are designed for this purpose.
 

dannyf

Joined Sep 13, 2015
2,197
I made some changes ...
basically the changes you made are not compatible with the hardware. embedded engineering is one where software and hardware go hand in hand. you generally cannot change one without corresponding changes to the other.

the issue here is essentially the output is negated. One simple way to fix it is to insert a NOT gate on the data line. A small mosfet + a resistor would be a good solution here. Or a single gate NAND/NOT.

Another solution would be to change the software. very easy if you have the source code. Otherwise, you have to assume that the author used an array to store the font information and you can search for the values and replace them with the compliment values.

typically you store the font value in '0', '1', '2', ..., '9' format. So you look for a consecutive string of their 7-segment equivalent. they are four combinations: 0x7e, 0x30, 0x6d, ...; for active high abcdefg(dot), or 0x3f, 0x06, 0x5b for active high (dot)gfedcba, or their compliments for active low. Once you found those, replace them with their compliments and you should be ready to go.
 

AnalogKid

Joined Aug 1, 2013
10,986
I have already swapped lines 1 and 15 (first two bits) of U14, which swapped the digit positions.
Isn't that equivalent to "second inverter between Q7 and DS of U13"
No. U14 controls the display segments, not the two digits. Those are selected by U13.

Ah - you swapped the two IC reference designators. As far as I can see, the only things you changed besides some part numbers (but not types) is that the circuit now is powered by 5 V instead of 3.3 V. I don't see anything that would lead to a logic inversion. What else did you do?

ak
 

Thread Starter

kosalos

Joined Nov 21, 2016
11
thanks everyone
As a beginner I tried to copy the Accutronics design exactly, but:
1. didn't find a source for the LED display they specified, but swapped out another common anode part, and deciphered the pin out by trial and error.
2. bought the driver transistors they specified (KTA1504, only a few pennies each) but then looking at them decided I'm not ready to solder such small components. Used 3906 instead, and found that 1K pull ups worked okay. The segments are medium bright.

I've ordered an invertor IC (CD4069), and will experiment with flipping the data line that way rather than the transistor method.
Could the relative timing of Data vs. Clk changes be so critical that a transistor delay on just the Data would cause them to be out of sync?
If so, is there another logic element I should add to the Clk line to bring them back in sync (or maybe invert Clk twice, to make him the late one)?

One other thing. I also ordered a common cathode display (they're $0.38).
I shouldn't even try putting it in place of the common anode display with no other changes?
 
Top