pulse-shaping with 555 monostable...

This one is Old Skool...

I have a pulse which I want to limit to a maximum length.

Using a 555 monostable with a differentiator at the input (the standard one with a BJT inverter, 10k + 10 nF + 10k filter, provides a "maximum length" pulse when triggered by a positive polarity pulse. This can be used with an external and-gate to limit the original signal to this length.

My question is - can this external and-gate be removed by cleverly connecting the 555 reset-input to the original signal, given that the polarity of the incoming signal is positive (i.e. at GND when inactive). Maybe someone here has seen this type of circuit before.

This would keep the 555 in reset until the input signal activates, then the output will go high until the timing is done (pulse reached the maximum length) OR the input signal goes low.

I'm not so sure about the allowed setup time of trig after reset ->

high though, I can't find this speced in the datasheets I've looked at. I need to know that the differentiators pulse will have sufficient hold to trig at the same time as the reset is lifted... spice- simulating with a model is not enough either since they are often just "functionally equivalent".

If the idea is inviting trouble, I guess I'll just put the and-gate there - it just seemed like a nice way to solve a simple problem and reducing the BOM :) Perhaps there is a way to configure a 556 instead to do this task..

Regards /Bjorn

Reply to
BW
Loading thread data ...

The input as you call it I assume is the trigger input (pin 2)? If so This input gets triggered with a sink signal that is 1/3 or less from the Vcc supply.. It is a PNP input and sinking is the only thing it understands.. The threshold input uses (+) to trigger it and it must be (2/3) or more of the Vcc to activate the threshold, which simply turns the output off and kicks in the discharge pin..

Your (+) trigger is not starting it at the raising, but at the falling of your signal, which is assumed to have a sink source..

If the output pulse becomes shorter than the signal pulse, this can lead to problems because this means that the TRIGGER input is still being held low, assuming that you understood what I said before and correct the input polarity... Unless the falling edge of the signal is really where you want it to trigger..?

If you are trying to short cut the signal by using a one-shot method, you need to gate the input, so not to cause problems with the discharge output of the timer, other wise you won't get a full discharge, or one that is reliable.

Most people use a decoupled capacitor pulse to trigger the input thus removing this issue..

If pulse output timing to be a fixed domain, regardless of signal width input, then triggering the TRIGGER input via a cap decouple to keep the DC component out of the picture, avoiding a collision timing with the finishing output and signal input, should get you some where..

This would at least allow the discharge output to do it's job on your timing cap.

Reply to
Jamie

On Mon, 13 Dec 2010 16:31:36 -0800 (PST), BW wrote:

--- If I understand you correctly, what you want is for the 555 to output a pulse of a certain width when an input signal goes high and/or to go low if the input signal goes low before the circuit times out.

That's easily done like this: (View in Courier)

+V>----------------+---------+-------+ | |8 | | +---+---+ [Rt] | 2|_ Vcc |3 | +-----+------|----O|T OUT|---|------> OUT |R1 |C1 |C2 | _|7 | [10k][100nF][0.1µF] | D|O--+ | | | 4|_ |6 | IN>---+-----|------|----O|R TH|---+ | | | GND | | | | +---+---+ [Ct] | | |1 | GND>--------+------+---------+-------+ _ What happens is that when IN goes high, R is forced high, releasing the 555's RESET and allowing it to trigger. _ However, the T is held low, momentarily, by the differentiator, R1C1, which triggers the chip and forces its output high. The length of time OUT stays high will depend on the values of Rt and CT as long as IN stays high longer than the timeout period.

If it goes low before the circuit times out, the chip will be reset and the output will be forced low.

C2 is used to decouple the chip from the supply and should be mounted directly across pins 1 and 8, but if tyou use a CMOS 555 (7555) it can be omitted.

If you don't already have it, LTspice is free and available at:

formatting link

and if you care to simulate the circuit, here's the circuit list:

Version 4 SHEET 1 880 680 WIRE -128 48 -512 48 WIRE 304 48 -128 48 WIRE 416 48 304 48 WIRE -128 80 -128 48 WIRE 416 112 416 48 WIRE -128 176 -128 144 WIRE 32 176 -128 176 WIRE 304 176 304 48 WIRE 304 176 256 176 WIRE -336 240 -384 240 WIRE -224 240 -256 240 WIRE 32 240 -224 240 WIRE 320 240 256 240 WIRE 416 240 416 192 WIRE 416 240 320 240 WIRE 32 304 -32 304 WIRE 320 304 320 240 WIRE 320 304 256 304 WIRE 416 336 416 240 WIRE -384 368 -384 240 WIRE 32 368 -384 368 WIRE -32 416 -32 304 WIRE -512 432 -512 48 WIRE -384 432 -384 368 WIRE -224 432 -224 240 WIRE -512 560 -512 512 WIRE -384 560 -384 512 WIRE -384 560 -512 560 WIRE -224 560 -224 496 WIRE -224 560 -384 560 WIRE -128 560 -128 176 WIRE -128 560 -224 560 WIRE -32 560 -32 496 WIRE -32 560 -128 560 WIRE 416 560 416 400 WIRE 416 560 -32 560 WIRE -512 592 -512 560 FLAG -512 592 0 SYMBOL Misc\\NE555 144 272 R0 SYMATTR InstName U1 SYMBOL voltage -384 416 R0 WINDOW 3 24 104 Invisible 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR Value PULSE(0 12 0 1e-6 1e-6 5 10 2) SYMATTR InstName V1 SYMBOL res 400 96 R0 SYMATTR InstName R1 SYMATTR Value 1e6 SYMBOL cap 400 336 R0 SYMATTR InstName C1 SYMATTR Value 2e-6 SYMBOL voltage -512 416 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value 12 SYMBOL res -48 400 R0 SYMATTR InstName R2 SYMATTR Value 1000 SYMBOL cap -240 432 R0 SYMATTR InstName C2 SYMATTR Value 1e-7 SYMBOL res -240 224 R90 WINDOW 0 0 56 VBottom 0 WINDOW 3 32 56 VTop 0 SYMATTR InstName R3 SYMATTR Value 10k SYMBOL cap -144 80 R0 SYMATTR InstName C3 SYMATTR Value 1e-7 TEXT -464 592 Left 0 !.tran 20

--- JF

Reply to
John Fields

. ^^^^^^^^^^^^^^ . integrator

--
JF
Reply to
John Fields

=A0

=A0 =A0 _

Thankyou very much, this seems to work exactly as I intended!

Yes, I'm using a CMOS 555, I think an ICM7555.

Best regards, Bjorn

Reply to
BW

--
You're welcome; my pleasure. :-)



>Yes, I'm using a CMOS 555, I think an ICM7555.
>
>Best regards,
>Bjorn
Reply to
John Fields

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.