Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

4-Digit LED without Arduino

Status
Not open for further replies.

skarkowtsky

Advanced Member level 4
Full Member level 1
Joined
May 25, 2016
Messages
109
Helped
0
Reputation
0
Reaction score
0
Trophy points
16
Activity points
1,076
Can a 4-digit 7 segment display be driven by a thumbwheel switch and bcd decoder without Arduino or any other code-based circuit?
 

You could use four-4511's and multiplex their outputs, or you could use one 4511 and multiplex the inputs. If you could find a different BCD-to-seven-segment decoder with a tri-stateable output, that would be ideal, that way you could tie the four outputs together and do your muxing that way.

look at sn7447
 
Reading earlier posts in this thread I think you are saying you have four BCD thumbwheel switches and a single multiplexed 4-digit display so the problem is how to 'listen' to the switches and 'talk' to the display over a reduced number of connections.

The technique is exactly the same as before except that the limitation of only one set of segment connections means you have to sequence the segment drives so only one digit is lit at any time. If you move from one digit to the next in a loop and do it fast enough, persistence of vision makes it look as though all the digits are lit simultaneously. This is how almost all displays are driven.

Unfortunately, the CD4511 does not have tri-state outputs, they can only be driven high or low so you have to use one to permaently drive all the segments and select which switch feeds its BCD data to its input in time with the matching digit being enabled. How this is done depends on whether your display is common cathode or common anode so we need to know which it is before advising further.

Brian.
 
1 thumb wheel, four 4 bit tri-state latches, 555 timer and its Rs and Cs,
four NO switches to load each latch, 2 bit counter, 2 to 4 decoder

thumb wheel BCD output goes to input of all four tri-state latches
turn the thumb wheel, press the NO switch for the digit to be updated to load the latch

eye persistence requires about 24 frames per second (like TV or movies)
four displays, 24 times a second, so minimum frequency is about 100 Hz
200 Hz will be better

555 timer operates at about 200 Hz - each rising (or falling) edge clocks a 2 bit counter
these two bits address decoder, so one line is active at a time to activate the anode
(or cathode) of one of the four display numbers - this also activates the output of the
appropriate tri-state latch

typical parts, you can use something else:
i have not checked all of the potential issues

display DigiKey 67-1440-ND
tri-state latch DigiKey 296-29550-1-ND (dual 4 bit, so you'll need 2)
555 timer Digikey 2368-NTE955MC-ND
push button DigiKey 2368-54-700-R-ND
decoder DigiKey 296-18203-1-ND
counter DigiKey 296-2096-5-ND
 

... and the potential issue would be 'ghosting'. There is a compromise, sequence too slowly and you see the digits flicker, go too fast and the brightness of the segments will start to merge from one digit to the next being displayed. We get around it when using MCUs by adding a brief 'all segments off' period before the next digit turns on. That's harder to do with discrete components unless you use monostables or add 'dead time' between enabling each digit. One way would be to use a Johnson counter like the CD4017, it has ten outputs which can be cascaded so when you clock it you can use the sequence:
digit 1
digit 1
all off
digit 2
digit 2
all off
digit 3
digit 3
all off
digit 4
digit 4
all off

giving a single off period for each two on periods. You might get away with alternating single on and off periods but the brightness would suffer.

Brian.
 

Appreciate the suggestions, but this too in-depth for my limited knowledge and comprehension.

Brian, I think I’ll return to the previous circuit of 48 4511s and individual LEDs in 12 groups of 4 digits. Albeit time consuming to wire, the circuitry is very simple for me to follow.

You might recall extensively helping to get that project off the ground! I never did get that 555 to beep when I threw the toggle switches.
 

Bear with me. This is for future consideration. Here is same chip, but not writing any code.

The chip having all these resources can be used with its basic elements of logic to do tasks
that require no code.

So here we have again a one chip solution, but its codeless this time.

So cntr upper left is advanced to next digit by button push, and that latches that digits
Thumbwheel setting. Cntr lower right drives a mux to send the segment data to LED
digit as well as drive a demux to select the active digit in the scan. All auto run.
1639173784334.png




The above are just some of the elements you drag and drop onto canvas that are inside chip.
Basically this is just 4 4 bit latches that are scanned by a mux, the latches holding the thumbwheel
data you entered by setting wheel and pushing a button.

This particular design is a little more complicated in that the tool has 8 bit latches for use, but
I wanted to make it simpler using 4 bit. So you can create a custom component with wizards
and then drag that onto schematic and create a symbol for it. So not recommended for first
time user (custom) but shows flexibility. Here is that latch component design -

1639170656002.png


As you can see this component used the internal logic components (Just D F-Fs) and wired up
to internal connectors so that it can be used as drag/drop just like rest of internal components.
There is a community building new components to add to the library by user, like 74HC logic
elements as an example.

"Codeless". When you finish dragging and dropping components onto schematic and wiring
them up, configing them,, like right clicking a cntr component and setting its # bits, you hit
build button. There is code generated for chip startup, but user generally, rarely, ever touches,
that, and chip is then programmed. So its codeless to user, but some code was tool generated
and used.

Think you have a breadboard, wires, various components sitting in a pile in front of you., Thats
what this chip is. Attached is the standard catalog of whats in the chip.

As you learn, you can drag and drop the more complex components, like timers, LCD, COM etcc
and just right click and config them, and if not changing them in operation, this time only code
needed is to write one line of code to start these more advanced components.

So if you continue to develop your skills here is a great way to start and be highly productive.

Lots of videos available for training. Several hundred projects you can use as a basis in design,
and to learn from. I have links to those sites if you need them.



Regards, Dana.
 

Attachments

  • Component List (2).pdf
    278.5 KB · Views: 202
Last edited:

Rough concept, how to multiplex 4 digits.

The thumbwheel is a 4-bit memory. Scan 4 thumbwheels as a diode-connected grid (similar to a keypad). Possibly the diodes need to be reversed. Or possibly use invert-gates. Or it may be done better with 16 logic gates, or 16 transistors.

The 4017 IC produces 4 pulses in sequence, selecting 1 of 4 inputs, and 1 of 4 corresponding digits.

You may need to invert polarities of signals in order to make them compatible with your devices.

Simulation done in a rush. Schematic is incomplete. I got it to work when binary 6 goes to the decoder IC. (Notice green wires are high, grey wires are low.)
Simultaneously the 4017 turns on the rightmost display. Decimal 6 appears.

4x4 grid diodes scan via 4017 7sgmt decoder 4 digits.png
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top