Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

multiple 7-segment displays

Status
Not open for further replies.

ico2

New Member
Hi,
I spent a while googling and then searching these forums for how to do this and couldnt find anything.

I have a 7-bit binary number in a shift register and I want to display this number on a pair of 7-segment displays?

I do not yet know how to use microcontrollers, so using one in this project is not realistic.

Thanks
 
hi ico,

The problem is that most LED drivers are BCD, [eg: 7447] and dont output the A to F pattern of the binary/hex byte.

Many years ago, there was a such an i/c, that was a binary to hex [0-9,A-F] but I have recently searched with no success.

I guess, there was not sufficient demand for it.

Is this the Counter/Register project ?

EricG
 
Hi, thanks for replying.
I am trying to output in decimal, 0-9, the problem is that I cant figure out how to get 2 digits.
 
hi,

If you want to show the 7 bits, just as 2 BCD digits, use two 7447 i/cs

Problem is, if the number in the SR is in binary, the decimal display will not be meaningful.

Example.
If the SR was full, ie 111,1111 bits, then a BCD/LED decode would display 7[blank]
If the SR was 111,1001 it would display 79, this would be the max BCD number displayable.
If the SR was 000,1110 it would display blanks.
If I'm missing your point, give me more input

EricG
 
Last edited:
I want to make it show numbers from 0 to 99.
There wont be a number over 99 put into the register in the first place, so that isnt an issue.
 
hi ico,
Your original post.

I have a 7-bit binary number in a shift register and I want to display this number on a pair of 7-segment displays?

You can't display a 7 bit binary value as two BCD numbers, without using hardwired individual logic gates or a micro.
I do no know of any individual i/c that can do so.

You say that you only want to count to 99, that's OK, if you remember that decimal 99 is hex 63 which is 0110,0011 ,
the output from your binary counter.

If you connected the 4 msb's 0110 into a LED driver i/c you would get 6 and the lower 4 bits 0011, would give 3,,,,, not 99

If you used two decade counter i/cs you could count upto decimal, 99 and connected these outputs the LEDs drivers, that would give 00 thru 99.

But as soon as you shifted the data in the SR, the shifted bit pattern would no longer represent BCD.

Does this help.
Eric
 
hmmmm.
Hopefully this explanation is clearer:
The counter counts to a number between 0 and 99.
This is shifted into the shift register.
(other stuff happens)
The number in the shift register (which is still between 0 and 99) needs to be displayed on 2 7segment displays.

Thanks
 
hi,

Do this,

Use two 74LS90 decade counters, in series, as the 00 to 99 counters.

Connect a 7447 bcd to LED 7segment driver onto each of the 74LS90,s
This will display a count of 00 to 99.

Also to the ouputs of the 74LS90's connect your parallel load 8 bit shift reg.

As you load the shift reg with the count, it will be the number 00 thru 99

As soon as you clock the SR, it will no longer be the count.

EricG

Dwg is Drawing, circuit diagram, schematic.
 
Yeah, I got that far, the problem is displaying the number _in_ a shift register, not the number I am about to put into the shift register.
Dont know if this is possible.
 
If it is useful: here are more complete details of my project:
A "score" is generated using the up-counter (clocked each time an event occurs), this can easily be displayed as you suggested, it is then put into a shift register.
The score in the shift register is compared with the "highscore" in another shift register (well, it is a roll register).
If the score is higher than the highscore, the value in the upcounter is put into the highscore register.
Life goes on.

I have the comparison bit working, the up-counter working, the up counter into the shift register working, basically I just need to display the value of the highscore register.
 
hi ico,

Hang in there, we'll crack it!..........

This shift reg you refer too, is it really a shift reg or just a 8 bit buffer holding the count while you compare it?

This 8 bit buffer is then compared to another 8 bit buffer, "
Logic: if new is greater then old then replace old with new in high score buffer"


Eric

For ref look at the 74LS85 i/c magnitude compartor
 
ok, the value from the counter goes into the store register.
An astable gives 7 clock pulses.
On each pulse, the value in the score register is shifted to the right.
On each pulse, the value of highscore register rolls to the right.
The values of each bit are compared as they shift/roll by, if a bit in the score register is bigger than the corrosponding bit in the highscore register then the set input of an RS type flip flop is triggered, if the bit in the highscore is bigger then the reset input of the RS flipflop is triggered.
As it is the last bit to be different between the 2 registers that determines which is actually higher, the output of the RS flipflop shows which number was bigger.
The score register is now empty.
The highscore register is the same as it has rolled back to its origional value.
Then (perhaps on an eigth clock pulse), if the score was higher than the highscore, the highscore is replaced with the score from the up-counter.


The score in the up-counter needs to be displayed.
The score in the highscore register needs to be displayed.


Thanks :)
 
hi
read your latest post, will look it over and respond within 24hrs.

Regards
Eric
 
wouldn't a serial binary to bcd converter do the job?.... i found this link...
**broken link removed**
 
It would be helpful if you were to list the various chips you are using and their function in your circuit. There are many register and counters, both TTL and CMOS. Knowing which you are using might make it easier.
 
Perhaps I am wrong, but I thought you already had at least a part of the circuit working. If this is true, can you not provide the numbers of those chips? (i.e. 7490, 7475, 74173, or are they 40xx)?
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top