How to adjust duty cycle of 555-timer circuit?

Thread Starter

henrya4345657

Joined Dec 5, 2021
1
Below is an interesting circuit that adjusts the pulse-width output of the ubiquitous 555 configured as a one-shot, so that the duty-cycle is 50% between 25Hz to 111Hz.
The idea is to adjust the 555 output pulse width using a feedback loop, until the output pulse train has an average voltage value of 50% of the pulse amplitude, which only occurs when the duty-cycle is 50%.

The 555 is triggered by the falling pulse edge of the input signal to generate a one-shot output.
The 555 output pulse train is integrated by U1 and adjusts the Q1-Q2 current-mirror current, which controls the charge time of C3, and thus the 555 pulse-width, until the integrated (average) value equals the Ref value determined by R1 and R2.
Vref is set to 1/2 the output pulse amplitude (≈ ½ of 4.48V in the simulation), thus giving an output duty-cycle of 50%.

U1 is a rail-rail type input and output op amp to maximize the dynamic range.

The value of R1 may need to be tweaked to get a 50% duty-cycle, depending upon what the actual pulse output voltage is of the 555 you use.
Of course, you could also adjust Ref voltage to give a different fixed duty-cycle, other than 50%.

The value of R5 may also have to be tweaked, depending upon how good the two transistors are matched.
For good matching you could use the inexpensive (U$0.37) DMMT3906W matched transistor pair in place of Q1 and Q2.

The LTspice simulation below shows that the output duty-cycle is 50% for 20% duty-cycle pulse input frequencies of 25Hz (yellow traces) and 111Hz (blue traces).
It will also do that for any frequency between those two limits, and is insensitive to the input duty-cycle.

View attachment 153477
do you know which of these values I would need to adjust to make this work for the 50-500 Hz range?

Moderator edit: New thread created from this.
 

crutschow

Joined Mar 14, 2008
28,551
do you know which of these values I would need to adjust to make this work for the 50-500 Hz range?
It's more difficult to get the circuit to operate over that wider frequency range, but with a few tweaks, it works (below):
Green traces are 50Hz and yellow traces are 500Hz.

1638773212728.png
 

Ian0

Joined Aug 7, 2020
4,146
Far simpler would be to run the 555 at twice the frequency, then divide by two using a 74HC74 or 4013. Then you know that the output will definitely have a m/s ratio of 50%. It will also require fewer components.
 

MrChips

Joined Oct 2, 2009
25,045
Agreed it’s fewer parts that using a divider, but it must be an op-amp with rail to rail output (or with completely symmetric voltage swing)
The pedants will tell you that the TS asked for a 555 circuit, and there is no 555!
The exact requirements of the TS is unclear. TS was referring to a member's suggestion in another thread. Reference to 555-timer in the title was added in moderation process.
 

crutschow

Joined Mar 14, 2008
28,551
Far simpler would be to run the 555 at twice the frequency, then divide by two using a 74HC74 or 4013.
I would recommend that also if the application allows an output frequency 1/2 the trigger pulse frequency.
I think it would be far easier just to use a Dual-Op-Amp .....
It would be if that does what the TS needs.
But the TS apparently wants a variable frequency with a 50% duty-cycle, not a variable duty-cycle with a fixed frequency.
 
Last edited:

LowQCab

Joined Nov 6, 2012
1,619
So what exactly is wanted or specified by the Thread-Starter ?

What's the application, the end result, the big-picture ?, A Frequency-Adjustable Square-Wave-Oscillator ?,
for doing what ?

What type of Input is supposed to change the frequency ?, a Pot ?, a 0-10V Voltage ?, a Digital-Signal ?

What is the desired Frequency range ?

What type of Circuit-Construction / Device-Type ?, SMD ?, Through-Hole ?, Dead-Bug ?

What is the desired Power-Supply-Voltage ?

What is the desired Output-Current ?

This Thread has gotten completely crazy.
.
.
.
 

AnalogKid

Joined Aug 1, 2013
9,639
This Thread has gotten completely crazy.
Disagree. I think the requirements are perfectly clear.

A circuit that takes an input square wave of unknown duty cycle, and produces a 50% DC square wave at the same frequency.

The request is based on an adaptive 555 monostable circuit from another thread, modified for a different frequency range.

The suggested circuit uses a servo to pull the duty cycle to 50%, no matter what the frequency of the trigger signal (over a limited range).

There is no spec for the servo settling time.

ak
 

LowQCab

Joined Nov 6, 2012
1,619
Might the inputs of the left op-amp possibly be reversed? Aren't the three 10k resistors meant to set the hysteresis to 1/3 and 2/3 of the supply?
Yepp, the Op-Amps were originally drawn up-side-down,
( vs the convention of Inverting-Input on top).

It's been fixed now.

That's what I get for not carefully checking that sort of thing when I modify somebody else's Schematic.
The Schematic was originally from a Data-Sheet obtained years ago, and was extremely s-p-r-e-d-o-u-t,
I just made it more compact, and moved things around to make it easier to follow,
and in the process didn't notice the unusual flipped polarities, thanks for pointing that out.
.
.
.
 

LowQCab

Joined Nov 6, 2012
1,619
Disagree. I think the requirements are perfectly clear.

A circuit that takes an input square wave of unknown duty cycle, and produces a 50% DC square wave at the same frequency.

The request is based on an adaptive 555 monostable circuit from another thread, modified for a different frequency range.

The suggested circuit uses a servo to pull the duty cycle to 50%, no matter what the frequency of the trigger signal (over a limited range).

There is no spec for the servo settling time.

ak
I must have missed the Memo .........
That's still not a complete explanation of all the Specs required.
Thanks for your effort.
.
.
.
 
Top