Project: Buzzer Box
11 years ago
I recommend reading the original version here on LiveJournal
I like my workplace. Every now and then I get requests to build odd, funny or just aswesome stuff. This time it was Multi-Input Reader for Buzzers. It's primary used in a company intern quiz-game with mixed groups of employees. By now it got also used in a small TV show production where two moderators stood up against each other.
There's nothing fancy about it. It's build around a ATMEGA16 Mikrocontroller. Basically because it comes with at least two fully accessible multipurpose 8Bit GPIOs. I felt just too lazy to come up with a multipexed concept for buzzer reading. Or something with shift registers. Timer/Counter1 is used to generate an IRQ each 1ms, required to read all inputs in parallel. The set of two Bytes is then shifted through a counter which detects if any (and if so, which) Bit is high and therefore representing a hit Buzzer. In the very unlikely event that two parties hit a Buzzer exactly at the same time (remember, we're talking about a readout each 1 millisecond) the Bit that is read high first place while shifting the Bytes is the winner. Each Bit is then flaged as "hit" and will be ignored until it goes low again. This allows to create a list with hits in regard of the order in which they where hit. This list is send to a PC by using a RS232 interface and evantually a RS232 to USB converter adapter.
I also wrote a small Perl script that reads the Serial port, shows the result and stores it in a small textfile. Another colleague wrote a fancy game software that reads the textfile and responds to the the input according to the current state of the game. The game is entirely controlled by keyboard and comes with features like: flexible categories, game music, hightscore list, different fadeovers.
To answer two pissble questions/comments in advance:
• Yes, wireless buzzers would have been cool, but the job request stated: cheap and fuctional.
• Jep, I modified the Buzzers and removed the lock function. The Switches jump back up "open" (normal psotion) back on its own when lifting the hand.
The Multi-Input Reader
• Wiring the box
• Closeup of the board
• The whole, asselmbled box
Some random project pictures
• The whole, asselmbled box
• Final Test
• Done. Ready for use
• Perl-Tk Reader for RS232
• The Game GUI
I like my workplace. Every now and then I get requests to build odd, funny or just aswesome stuff. This time it was Multi-Input Reader for Buzzers. It's primary used in a company intern quiz-game with mixed groups of employees. By now it got also used in a small TV show production where two moderators stood up against each other.
There's nothing fancy about it. It's build around a ATMEGA16 Mikrocontroller. Basically because it comes with at least two fully accessible multipurpose 8Bit GPIOs. I felt just too lazy to come up with a multipexed concept for buzzer reading. Or something with shift registers. Timer/Counter1 is used to generate an IRQ each 1ms, required to read all inputs in parallel. The set of two Bytes is then shifted through a counter which detects if any (and if so, which) Bit is high and therefore representing a hit Buzzer. In the very unlikely event that two parties hit a Buzzer exactly at the same time (remember, we're talking about a readout each 1 millisecond) the Bit that is read high first place while shifting the Bytes is the winner. Each Bit is then flaged as "hit" and will be ignored until it goes low again. This allows to create a list with hits in regard of the order in which they where hit. This list is send to a PC by using a RS232 interface and evantually a RS232 to USB converter adapter.
I also wrote a small Perl script that reads the Serial port, shows the result and stores it in a small textfile. Another colleague wrote a fancy game software that reads the textfile and responds to the the input according to the current state of the game. The game is entirely controlled by keyboard and comes with features like: flexible categories, game music, hightscore list, different fadeovers.
To answer two pissble questions/comments in advance:
• Yes, wireless buzzers would have been cool, but the job request stated: cheap and fuctional.
• Jep, I modified the Buzzers and removed the lock function. The Switches jump back up "open" (normal psotion) back on its own when lifting the hand.
The Multi-Input Reader
• Wiring the box
• Closeup of the board
• The whole, asselmbled box
Some random project pictures
• The whole, asselmbled box
• Final Test
• Done. Ready for use
• Perl-Tk Reader for RS232
• The Game GUI