Game show buzzer using a microcontroller

Discussion in 'The Projects Forum' started by Blacksmith, May 22, 2015.

  1. Blacksmith

    Thread Starter New Member

    May 26, 2014
    14
    0
    Hi
    I'm looking to convert my game show indicator lockout circuit from the original design using 14000 / 4000 series logic to a micro-controller based design, but I do not have a clue what to look for.



    Here are the system specs:
    • 15 contestant switches N.O.
    • 15 corresponding LEDs and aux output in parallel
    • 1 LED that comes on if any of the above LEDs is lit
    • a reset switch to blank the LEDs and reset the latches
    • a buzzer that beeps 0.5s to 1s when a contestant light is triggered or the timer reaches 0
    • a timer package that has 5 different push button inputs
    • a 5s or 30s on one switch that is selected automatically based on whether or not a contestant has triggered the system
    • a 45s switch
    • a 60s switch
    • a timer pause / hold switch
    • a timer reset switch
    • a 2 digit 7-seg display
    • the timer uses a divided 60Hz signal input coming off of the mains transformer

    System requirements:
    • Inputs debounced
    • timer display can be driven separately
    • LEDs can be driven separately
    • current systems operate on 8 Volts regulated, with 12 volt AC input clock signal. ( the ability to operate at this voltage is preferable

    If I could get info as to what I'm looking for in a micro, in relation to I/O, peripherals, and anything else to consider as I'm totally new to micros.
    Also I'm not set on a particular companies micros, so I'm game for almost anything as long as the tools are easy to use.

    Mike
     
  2. blocco a spirale

    AAC Fanatic!

    Jun 18, 2008
    1,438
    368
    Just about any microcontroller will have sufficient processing power to do this, the issue is the amount of i/o required.

    So, think about how you can reduce the i/o pin count requirement by working out what can be multiplexed or handled by shift registers etc.

    The obvious candidates for multiplexing are the 26 switches which could be scanned by a 4x8 matrix, consuming 1.5x 8-bit ports. All the LEDs could be driven by a 32-bit shift register (made from 4x 8bit shift registers) which would consume no more that 1/2 an 8-bit port. If you can squeeze the buzzer in there somwhere; you could fit the whole thing within a device with 2x 8-bit ports.

    But, whilst it makes sense to use i/o efficiently there is no point scrimping by using a device that only just has enough so I'd look at using one of the larger Microchip PICs e.g. a 16F877 or similar.

    As far as coding is concerned; Start by assigning 4 bytes of ram as LED output registers and write the code to clock their contents into the external shift registers. You can easily test this part by hard-coding bit patterns into the registers and checking that the patterns are duplicated by the LEDs.

    Then, assign 4 bytes of ram as button status registers and write the multiplexed button scanning routine. Test the button scanning routine by copying the four button status registers to the four LED output registers so that when a button is pressed a corresponding LED illuminates. Therefore, you can verify that the i/o coding and hardware is working correctly before you begin writing the functional code.

    And, rather than using the 60Hz mains as the timebase; divide down the internal clock and configure it to generate interrupts.
     
    Last edited: May 23, 2015
    ebeowulf17 likes this.
Loading...