# Bowling Pin Counter

Discussion in 'Homework Help' started by jnez367, Mar 14, 2008.

1. ### jnez367 Thread Starter New Member

Mar 14, 2008
9
0
Have this assignment for an online digital electronics class. Instructor says information in my text is not sufficient to complete the project. Good textbook selection.

Does anyone have any idea how I can start this. Tried using Full adders but I cannot figure out how to convert output back to decimal 1-10.

This circuit uses ten switches to represent the ten pins used in bowling, with the switches (pins) arranged as shown below.

The user closes a switch to indicate a fallen pin. As more switches are closed, a two-digit 7-segment display shows the number of fallen pins, from 00 to 10. For example, if switches (pins) 1, 3, 5, and 8 are closed, the display should read 04.

Any help would be appreciated. Consulted numerous sources, but I am so lost I could be looking right at the answer and would not know it.

2. ### hgmjr Moderator

Jan 28, 2005
9,030
214
Are you required to use ordinary digital logic to implement this design?

It is a project that would be very easy to implement this with a PIC or an AVR.

hgmjr

3. ### jnez367 Thread Starter New Member

Mar 14, 2008
9
0
Be honest, have not covered anything like this. I think the solution should be some type of counter. Looked at Johnson Counter, ring counter. Don't think these will work. At least have not figured out how to make them work.

4. ### hgmjr Moderator

Jan 28, 2005
9,030
214
Can you list some of the digital logic IC's have you studied? I am interested in those other than NAND, NOR, AND, OR, and NOT gates. From your comments you have obviously covered counters.

hgmjr

5. ### jnez367 Thread Starter New Member

Mar 14, 2008
9
0
I am stuck with whatever I have in Multisim 10. Would not expect you to look through the entire list. If it helps, we just started adders. I think Multisim has a few eight bit parallel adders that I have been experimenting with. Real kicker. In the book, there is a voting machine circuit that looks like this

Fa--------------- Parallel Adder -----------BCD to 7

----------------

----------------

Even this does not work. Thought I could expand on this and find a way to decode the output.

Jan 28, 2005
9,030
214

hgmjr

7. ### jnez367 Thread Starter New Member

Mar 14, 2008
9
0
Did not see one, unless they are calling it something I do not recognize. Particular chip number. We did MUX/DEMUX, but I don't know how that can help.

This is the parts list. As I said, I do not expect you to check it. Appreciate that you responded.

ftp://ftp.ni.com/pub/devzone/tut/ni_multisim10_base_parts.pdf

If nothing else I feel better. Maybe this was not as easy as the assignment sheet suggested.

8. ### hgmjr Moderator

Jan 28, 2005
9,030
214
You have a 74HC166 which should work.

This is not ncessarily the only way to accomplish your task but it is one way.

Use two 74HC166 shift registers and connect the output of one to the input of the second. This would serve as your interface to the 10 switches.

You would then take the serial bit stream output from the shift register and feed it into a BCD counter. You will need a clock source to clock the data out of the shift register and into the counter. You would need some additional logic to control the clocking of the last 10 of the serial bits from the shift register into the counter.

You would also need a BCD to 7-segment converter to handle the display.

This should provide you with a starting point from which you will need to carry out the design on your own.

Someone may be able to recommend a more straightforward scheme.

You may be able to keep things simple by providing a dedicated switch that you press to tally the score.

The procedure would go something like this. You would flip the switches to indicate which of the pins had been knocked over. After that you would press the "score" switch and that would trigger the circuitry to calculate the score and display it on the 7-segment display.

hgmjr

9. ### jnez367 Thread Starter New Member

Mar 14, 2008
9
0
Thanks you. If nothing else, I will have something to hand in. Was killing myself trying to get the parallel adders solution to work. Maybe I was on the wrong track.

10. ### mrmeval Distinguished Member

Jun 30, 2006
833
2
Binary to BCD then BCD to seven segment....

Upon looking at that my eyes bleed! 10 bits binary to BCD takes a lot of parts.

11. ### scubasteve_911 Senior Member

Dec 27, 2007
1,202
1
I can think of a really primitive way, but it isn't exactly elegant. The best way would probably be some sort of finite-state machine.

You can convert your 10-bit to a 4-bit binary. Then, you can take each segment on the display and write a lookup table in terms of this 4-bit term. You may implement the decoder with a demultiplexer with a 4-bit select using the lookup table as inputs to the demultiplexer.

This would require a 16:4 encoder along with 7 16 to 1 demultiplexers.

Steve

12. ### jnez367 Thread Starter New Member

Mar 14, 2008
9
0
Wanted to thank everyone who helped out. Really appreciate it. Can anyone tell me if there is some convention on simplifying the truth table for a circuit like this. It looks like I would need a 10x10 for each switch. We have not covered truth tables much larger than 4x4.