This is a pulse generator with adjustable duty cycle made with the 555 timer IC. The circuit is an astable multivibrator with a 50% pulse duty cycle. The difference from the standard design of a 555 timer is the resistance between pins 6 and 7 of the IC composed of P1, P2, R2, D1 and D2.
The diodes D1 and D2 set a definite charging time for C1 which produces a 50% duty cycle in a normal case. The duty cycle (n) is dependent on P1 and P2 in the following manner:
n = 1 + P2/P1
If P2 = 0 (n = 100%) then the frequency can be approximately calculated with the following formula:
f = 0.69/((2*P1 + P2 + 4.7kΩ)*C1)
As you can see in the captures the duty cycle is not between 0% and 100% but it is within reasonable range. I’ve used a 20K for P1, 100K for P2 and 10nF for C1.
Printed circuit layout of the pulse generator
C2 = 10µF
C3 = 0.1µF
R1 = R2 = 4.7K
D1 = D2 = 1N4148
IC = 555
C1, P1 and P2 must be calculated