LED Flasher Circuit Help

Thread Starter

Unkle Steez

Joined Mar 18, 2015
2
Hello,

I am trying to get some help with a circuit I have for a digital electronics class. Here is the premise:

"Design and implement an LED flasher circuit that is controlled by a user activated pushbutton. Upon power up, the LED should be off. When the user pushes the button, the LED should be on. When the user pushes the button again, the LED should be off. When the user pushes the button again, the LED should flash at a 10 Hz rate (approximate). If the user pushes the button again, the LED should be off and the whole cycle should repeat.


Use a synchronous state machine built from J-K flip-flops to control this device. The state machine should use Gray code ordering."


I can set the circuit to be off on start up, hit a button and go to ON, hit the button and PULSE at 10Hz. But I cannot seem to figure out how to get it to go to the off state in between ON and PULSE.

I am including a pdf of the circuit.

Any help would be greatly appreciated. Thanks.
 

Attachments

Bernard

Joined Aug 7, 2008
5,784
You made n nice presentation & good start. This is a little out of my comfort zone but here is my take.
We start with a 3 bit Gray code control counter & decode each of the 4 steps' Start with a debounced SW for clock
It is late so I'll just post my thoughts on drawings. Sorry for few skipped inkings.3 bit Gray # 1 00000.jpg 3 bit Gray # 2 00000.jpg
 

Thread Starter

Unkle Steez

Joined Mar 18, 2015
2
Thanks for the help Bernard. I actually had a Eureka! moment last night about 10p. I had been going about the logic sequence all wrong from the start with my next state diagram. Was trying to skip past 00 to 01 from 10. When all I had to do was complete the cycle 00 - 01 - 11 - 10 then use a data selector to switch the right inputs to the LED. Works great now. The only problem I had with construction was with the push button causing skipped states because it wasn't
"debouncing" well enough. Put a .01uF across it an it worked perfectly. I have attached an image to show what I ended up with.lab6 printout.png
 
Top