A few years back I built a Quiz Buzzer System for my mother. She loves it but she is still keeping track of scores using a pencil and a piece of paper. I decided to fix that using an Adafruit Trinket microcontroller board, a 4 digits 7 segments display and two arcade style buttons. You will find good tutorials about the Trinket on the Adafruit learning center.
Shift Registers & Prototyping
The 7 segment display I am using doesn’t provide any logic and must be driven directly by the micro-controller. Since it would require more output pins than what is available on the Trinket, we will use two shift registers.
I am using the 74HC595 shift register to drive each segment and the TPIC6B595 to sink whole digits. Because sinking a digit potentially requires 7 times more current than driving a segment, we use the TPIC6B595 high power shift register. The popular 74HC595 will be more than adequate to drive each segment.
To control one or more shift registers you need three outputs on your micro-controller, one for the clock, one for the data and one for the latch. The latch pin is used to clear the register memory and write to the outputs when the data has been written using the clock and data pins. To send a bit of data you sink the clock, set the data pin to the value you want to write and pull the clock back up.
I did not used the ShiftOut library but used the schematics presented on their page to wire my circuit. You can find this very well written tutorial at http://arduino.cc/en/tutorial/ShiftOut.
I soldered all the parts for this project on an Adafruit breadboard prototyping board. All the Trinket code for this project can be found on my Github account at https://github.com/pchretien/scorecounter. The code comments contains info on which Trinket pin to use for each part.
To build the enclosure any box would do. For this project I decided to make a nice looking wooden enclosure using pine and mahogany. The technique used here is almost the same as for building bandsaw boxes.
First step, glue a stack of wood together and flatten the face that will become the bottom of the box. Once the blank has cured, cut the excess wood and make all faces flat and square.
It is now time to cut the front and back of the box on the band-saw. Cut a 1 inch piece for the front so you have enough room to fit the seven segment display. For the back, remove about 1/4 inch of material. This will be the door to access the internal circuit.
It’s now time to cut the interior of the box on the band-saw. Make the entry cut on the bottom of the box so it will not show on the final project. I suggest using a maximum of 6 tooth per inch (tpi) blade to make the cut since a lot of wood needs to be cleared when cutting a piece this tick.
Now, do the same on the front panel to fit the seven segment display. Use the display to mark the dimensions of the hole and start cutting at the bottom to hide the entry cut. Make the hole a bit smaller and finish it with a file to get a snug fit.
The last cuts you have to make are the two holes for the buttons and the hole in the back for the USB cable. You may want to install all the electronic inside the box before to drill the hole for the USB cable to make sure it aligns with the Trinket connector.
Cutting the interior of the body and the front panel with the band-saw leaved two entry cuts you now have to close. Simply apply some wood glue in the cut and close it using clamps. Let dry for about an hour.
Finally sand and apply some finish on the box and screw the back in place using #4 wood screws.
You are done.