One shot 555 for multiple buttons?

Status
Not open for further replies.

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
I am just starting to learn this stuff and have built a few things here and there. I have a clock circuit I'm modifying from a binary clock project, and the set buttons are very noisy. I found the one shot schematic online using a 555 and thought it might help me, but I was wondering if there was a way to use just one 555 to manage the 3 buttons? I imagine it would have something to do with pull up or pull down but I don't fully understand that yet. Any ideas?

I'm new here and look forward to becoming a part of this community! Thanks in advance for the help.
 

SgtWookie

Joined Jul 17, 2007
22,230
Hello Lehthanis, and welcome to AAC!

Well, you have 3 buttons that are "noisy", which I presume means that they are bouncing - causing the time to advance multiple digits when it should only advance a single digit.

First thing I'd suggest is to get some cleaner like 90% isopropyl alcohol or better, and try cleaning the switches. The contacts may just be dirty.

If that doesn't work, then no - a single 555 won't take care of your 3 buttons, as they are three different circuits. You would need at least three 555's and associated other parts to go along with that.

But, you haven't told us much about this clock. Is it battery powered? Does it plug in the wall? Do you have any pictures of it?

What of these schematics you've seen? You mention them, but provided no links to them.
 

Wendy

Joined Mar 24, 2008
23,415
No, they can be posted. A new member may find their post moderated because of this, but the moderators fix as soon as they see it.

There are many ways to debounce a circuit. I drew up a simple graphic to show some of them.

 

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
Hey, thanks for all the answers! http://www.instructables.com/id/Binary-Clock/ is the original circuit/project. Here's where I found the one-shot circuit. http://talkingelectronics.com/projects/LogicDesigner/LogicExperiments.html

I completely redid the schematic in Eagle because the instructions assumed too much and didn't match up to some other things I'd read and learned...for example, the original circuit left out the 220KOhm resistor off the 4060 crystal portion. And the LED resistors had to be modified to match the LEDs I had. Also, the original circuit assumed you had power and ground to the ICs, I wanted to cover that because you don't get airwires in eagle freeware for assumed connections.

As you can see by my modified schematic, it's 9V, and there's 4 switches...one NC and two NO. you hold down the one NC to disconnect the timer pulse and then set the Hours, Minutes, and Seconds with the other 3. I want to debounce those buttons.

Future plans probably will need another thread. I'd like to make the clock keep time on a battery, preferably a small watch battery or something, if the ICs can run on something that small, and then make the LED's light off of external power.

Thanks for all the help! I'm going to like this place!

 

SgtWookie

Joined Jul 17, 2007
22,230
I completely redid the schematic in Eagle because the instructions assumed too much and didn't match up to some other things I'd read and learned...for example, the original circuit left out the 220KOhm resistor off the 4060 crystal portion.
Good catch on your part. Without that, the 4060 would overdrive the crystal, and vice versa.
And the LED resistors had to be modified to match the LEDs I had.
Another good catch.
Also, the original circuit assumed you had power and ground to the ICs, I wanted to cover that because you don't get airwires in eagle freeware for assumed connections.
Yes, you do - IF your power nodes are named the same as the power pins in the ICs.
You are using +9V and GND for the supply names.
Had you used VDD and VSS instead, there would have been air wires in the PCB editor for them. When in the schematic editor, you need to keep your eye on the Erc results; if you don't, you will have a big mess in your PCB that will be a pain in the neck to fix. Ask me how I know this. :rolleyes: Use Erc early, use Erc often, and keep it happy - your life will be far more pleasant that way.

As you can see by my modified schematic, it's 9V...
You're NOT planning on using a PP3 9v "transistor" battery, are you?
If so, plan on replacing the battery a couple of times a day.

..., and there's 4 switches...one NC and two NO. you hold down the one NC to disconnect the timer pulse and then set the Hours, Minutes, and Seconds with the other 3. I want to debounce those buttons.
You have some problems in that schematic, as S3 connects the output of S5B (pin 13) to Vdd; and S2 connects the output of IC8A to Vdd, and if S4 1-2 is made while S1 2-3 is made, IC1 Q14's output (pin 3) gets shorted to Vdd. That is not good at all! It's fine to force INPUTS to one power rail or the other (as a matter of fact, that is mandatory with 4000-series ICs except for the 4093 and 40106 as they have Schmitt-trigger inputs) - but you must not connect the OUTPUTs to Vcc or Vdd.

Also, the way you have the circuit wired, a typical de-bouncing scheme would need a diode on the output to keep a 555 timer debouncer from loading the circuit.

Future plans probably will need another thread. I'd like to make the clock keep time on a battery, preferably a small watch battery or something, if the ICs can run on something that small, and then make the LED's light off of external power.
The 4000 series ICs can operate from fairly low voltage and require little power. You definitely would not be able to operate LEDs for long. That presents a problem, as your LED source current is provided by the 4024 counters. The easiest way around that would be to use N-ch logic level MOSFETs, and flip the LEDs upside-down - as the MOSFETs would be sinking current rather than sourcing it. You would also need to get the MOSFET gates up to ~5v.
 
Last edited:

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
Good catch on your part. Without that, the 4060 would overdrive the crystal, and vice versa.

Another good catch.
Thanks! I tried to do some homework before blindly connecting components.

Yes, you do - IF your power nodes are named the same as the power pins in the ICs.
You are using +9V and GND for the supply names.
Had you used VDD and VSS instead, there would have been air wires in the PCB editor for them. When in the schematic editor, you need to keep your eye on the Erc results; if you don't, you will have a big mess in your PCB that will be a pain in the neck to fix. Ask me how I know this. :rolleyes: Use Erc early, use Erc often, and keep it happy - your life will be far more pleasant that way.
Wow, I haven't even looked into ERC, and so I did, and...just wow! Thanks for the feedback! I've gotta redo my board design anyways because it was an experiment, so I'll make those adjustments, AND make ERC happy. Yay! Progress!

You're NOT planning on using a PP3 9v "transistor" battery, are you?
If so, plan on replacing the battery a couple of times a day.
I have no idea what my plans would be. I just know that it would involve using something low voltage for the ICs to keep time, I think they can go down to 3V right? I'll probaly start another thread when I do this...I'll just probably make this as one constant power source for now.

You have some problems in that schematic, as S3 connects the output of S5B (pin 13) to Vdd; and S2 connects the output of IC8A to Vdd, and if S4 1-2 is made while S1 2-3 is made, IC1 Q14's output (pin 3) gets shorted to Vdd. That is not good at all! It's fine to force INPUTS to one power rail or the other (as a matter of fact, that is mandatory with 4000-series ICs except for the 4093 and 40106 as they have Schmitt-trigger inputs) - but you must not connect the OUTPUTs to Vcc or Vdd.
I think the 14.7K pull down resistors are supposed to drop the VDD to something the CLK+ inputs of the 4024 can handle...is that not right? The original schematic from the OP is the culprit for these connections. How else am I supposed to get the signal to the 4024's in order to set the clock? The design is supposed to be that you press and hold S$ to disconnect the clock pulse and then actuate S1 through S3 to increment Hours, minutes, and seconds respectively. I noticed that when I try to set the hours, it resets the minutes, when I try to set the minutes, it resets the seconds...that's obviously because of the connections. How can I clean this up and make it still work?

Also, the way you have the circuit wired, a typical de-bouncing scheme would need a diode on the output to keep a 555 timer debouncer from loading the circuit.
Yeah, I think I'll omit the debouncing for now til I learn a little more...I'll need to spend more time playing with the 555 experiments linked previously.

The 4000 series ICs can operate from fairly low voltage and require little power. You definitely would not be able to operate LEDs for long. That presents a problem, as your LED source current is provided by the 4024 counters. The easiest way around that would be to use N-ch logic level MOSFETs, and flip the LEDs upside-down - as the MOSFETs would be sinking current rather than sourcing it. You would also need to get the MOSFET gates up to ~5v.
Yeah, I think I'll make this a later project. I have an old circuit that I did that receives a signal from one source and powers the circuit from another...I think I'll dig that up and post it here for feedback. Thanks for all the help! I'm definitely interested in solving the switch setting problems you've mentioned. Help!
 
Last edited:

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
I couldn't find the old schematic...but I did find the thread it was posted in (the image is gone). I think it used an optoisolator. Does that sound useful for having a watch battery power the timekeeping components and an external 9V power the LED's?
 

Wendy

Joined Mar 24, 2008
23,415
Give it your best shot recreating the schematic (or a block diagram), then describe what you want in detail.

There are several folks that will try to draw something to help a willing learner.
 

SgtWookie

Joined Jul 17, 2007
22,230
Thanks! I tried to do some homework before blindly connecting components.
You really have to - there are far too many poorly thought-out schematics on the internet.

Wow, I haven't even looked into ERC, and so I did, and...just wow!
Surprise! :eek: ;)

re:voltage
I have no idea what my plans would be. I just know that it would involve using something low voltage for the ICs to keep time, I think they can go down to 3V right? I'll probaly start another thread when I do this...I'll just probably make this as one constant power source for now.
You could use a 9v "pp3" battery for backup, but it would have to power the logic portion only; no LEDs.

I think the 14.7K pull down resistors are supposed to drop the VDD to something the CLK+ inputs of the 4024 can handle...is that not right?
No, those pull-down resistors should have been resistors in series with the outputs so the switch would merely override the outputs rather than short them to ground.
The original schematic from the OP is the culprit for these connections.
Not surprising.
How else am I supposed to get the signal to the 4024's in order to set the clock?
Use the resistors like I just mentioned instead of pull-downs.

The design is supposed to be that you press and hold S$ to disconnect the clock pulse and then actuate S1 through S3 to increment Hours, minutes, and seconds respectively.
It doesn't do that - you just manually input the pulses by repeated pressing. The clocks still occur.

Instead of having the switches connecting to VDD, you could have them connecting to Q13 of IC1. That way they would advance at a rate of 2x per second.

I noticed that when I try to set the hours, it resets the minutes, when I try to set the minutes, it resets the seconds...that's obviously because of the connections.
If you don't want it to reset the minutes and seconds, you could use blocking diodes and pull-down resistors.

Why don't you upload your .sch and .brd files as they are now?
 

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
I'll try and draw up something when I get back to work (and have more free time, I have more of that at work than at home, lol).

In the meantime, I'm more interested in a solution to the switch problems connecting VDD to the outputs of the IC's. Perhaps diodes placed between the inputs and outputs of the IC's on the switch lines? Any particular type of diode I should use? Here's an updated schematic.



This would prevent the VDD signal from going to the output of the 4060, and also prevent the VDD from going to the resets of the 4024's as well as the output of the 4082's. I like this actually because it doesn't reset the minutes every time I adjust the hours, and reset the seconds every time I adjust the minutes. Right?

Could a moderator rename this thread to Binary Clock Project or something since we're not just talking about 555's anymore? Or should I start a new thread?
 

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
OOops, I was typing all of that while you posted Sgt Wookie. Is the schematic I uploaded a solution?

As for uploading the sch files...I'll do that now. The .brd file doesn't matter. I've ripped up all the wires to airwires because I wanna redo it on a smaller size board.

This forum is SO helpful! I'm really eager to learn as long as you all are as eager to help me as you've been! Thanks!

(BTW, I haven't solved all of the ERC problems yet..values and all haven't been added. I also intend to change the switches to smaller surface mount tactile switches, but couldn't find them in the library)
 

Attachments

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
VERY nice! I took it and moved some stuff around even more and made ERC 100% happy, no warnings or anything. This is very helpful stuff. I actually remember seeing this: http://forum.allaboutcircuits.com/showpost.php?p=296808&postcount=3 and I already have a 47uf cap on the power rail based on the doctronics clock circuit. I am not sure how to calculate what size goes on the main power rail like the 100uf is on this example, but after doing some reading, I now understand the .1uf on the VDD/VSS rail of each IC. I don't quite understand the .1uf on the drop off of pin 2 to VSS on IC3 and IC2 though.

I also don't quite understand the 100k resistors. and the 10K resistors as opposed to using Diodes for the same purpose...I imagine it prevents loading the outputs of the ICs, but I notice now that the switches are not connected to VDD anymore. Since they're only letting IC1's Q13 and Q12 outputs through for quicker setting, is this effectively a debounce solution for the switches? I'm also uncertain as to whether or not this method will give me the ability to advance the clock's hours, minutes, or seconds by one digit easily or not. Will I have to be super quick on the switches to do one digit?

This is amazing stuff, and While this schematic is probably a bit more advanced for a noob, I tend to learn much quicker when saturated than by taking baby steps through little experiments. I'm going to hit up my surplus electronics store today and pick up a handful of .1uf caps and the rest of the parts needed to make this work.

Also, thank you for making me not need any NC push button switches. I was having a hard time finding one locally.
 

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
Just built the revised version. It works charmingly! Very smooth operation of the buttons! I don't think debouncing will be necessary at all now, since it's only setting with the clock pulse.

I think I might want to use a flip-flop or something to divide the 2Hz output from IC1's pin 3 into a 1Hz pulse. That way my seconds counter is not skipping a bit, which makes setting it go a little slower than the hours and minutes.

Sgt Wookie, is there anywhere I can go to understand the use of those resistors and how you calculated the resistors and capacitors?

Edit: Actually, it looks liek a lot of those answers might be in those pdf's sheldons posted. Thanks sheldons!
 

Thread Starter

Lehthanis

Joined Dec 30, 2011
33
Just revised my schematic to include a 4013 Dual-D flip flop. off of the 4060(IC1)'s pin 3. I'll post it when I get a chance. Is there a smaller profile method of doing the 4013's division work?
 
Status
Not open for further replies.
Top