Can't get NE556 to generate pulse chain

Thread Starter

dnessett

Joined Nov 20, 2023
10
Hello,

I am trying to get a NE556 to generate a pulse chain based on a square wave input. The circuit is show in the first attachment and the result in the second. No matter what values for R1 and C1 I chose, the result is always the same (i.e., that of the second attachment). The falling edge of the square wave starts the output pulse, which stays asserted until the rising edge of the square wave. According to the NE556 documentation, the length of the pulse should be T = 1.1 * R * C1. I have tried R1 = 100K and C1 = .1 uF, which should yield T = 1.1 * 100,000 * .000001 = 100 mSec. The period of the square wave is about 700 msec (the red trace on the oscilloscope image), so the output should start at the falling edge of the square wave an end 100 milliseconds later. But, the output always stays high until the input goes high.

I don't know what I am doing wrong and would appreciate any help someone can give me.
 

Attachments

dl324

Joined Mar 30, 2015
17,228
Welcome to AAC!
The period of the square wave is about 700 msec (the red trace on the oscilloscope image), so the output should start at the falling edge of the square wave an end 100 milliseconds later. But, the output always stays high until the input goes high.
That's because the output can't go low until the trigger input is above Vcc/3.

Put a 10k pull-up resistor on TR (pin 8) and AC couple your trigger with a 0.1uF cap.

BTW, that's a terrible way to draw a 555 timer symbol.

What's the intent of not having a resistor to limit discharge current? The discharge transistor has current limiting built in, but it's better for you to control duty cycle with the ratio of the charging and discharging resistances.
 

AnalogKid

Joined Aug 1, 2013
11,225
You have run into a quirk of the 555. The standard monostable circuit in the datasheet is not a *true* monostable. It has no positive feedback, so the output pulse is not independent of the input pulse.

In your case, the output pulse is 100 ms, and the low part of the triggering waveform is 350 ms. The way a 555 handles this is -

After the timed period of 100 ms, the output stays high until the trigger signal goes high. So the output goes high for 100 ms, then is held high by internal logic for another 250 ms. When the Trigger signal goes high, the output is allowed to go low. The 555 was released into the wild in 1972, and the little bugger still doesn't know how to behave.

The classic solution to this classic problem is to add a differentiator stage to the Trigger signal. Add a small cap in series with the trigger signal and the Trigger input, and add a resistor from the Trigger input to Vcc. This will turn the negative-going edge of the trigger signal into a short pulse. If this pulse is less than 100 ms, the output will behave as desired.

The differentiator pulse width is less than 1 RC. As a starting point, use the same cap value as the main timer, with a 4x smaller resistor.

ak
 
Last edited:

crutschow

Joined Mar 14, 2008
34,924
If you remember that the 555 is basically a DC level triggered FF latch then you will understand how it works (and why your circuit didn't).
  • When the TRIG voltage goes below 1/3 Vcc, (and the THRS voltage is below 2/3 Vcc), the FF is Set (OUT high and DIS open).
  • When the THRS voltage goes above 2/3 Vcc (and the TRIG voltage is above 1/3 Vcc), the FF is Cleared (OUT low, and DIS connected to ground by the internal transistor to discharge the timing capacitor).
 
Last edited:

Thread Starter

dnessett

Joined Nov 20, 2023
10
Thanks to everyone for their answers. I (incorrectly) thought the 555 trigger was edge triggered, which, as all responders pointed out, is false.
 
Top