I am wondering if I need any special kind of waveform / function generator in order to generate a signal with the following description / parameters: 19 V max and 6mA operational limits; unbalanced biphasic waveform; delivers triplets of pulses at 5 ms intervals every 20 ms; adjustable pulse-width (0.4-0.6 µs).

Thank you very much for your time.

  • \$\begingroup\$ biphasic? or bipolar output? no adjustments besides PW50? \$\endgroup\$ Sep 29, 2016 at 3:26
  • \$\begingroup\$ rise time?> adjustable amplitude? may draw it and indicate tolerance \$\endgroup\$ Sep 29, 2016 at 3:52
  • \$\begingroup\$ Rather than try to find something, if it is just generating pulses it might be easiest just to build one using a high-speed PIC32 or ARM microcontroller with a fast cycle time (5 - 10 ns). \$\endgroup\$
    – tcrosley
    Sep 29, 2016 at 4:31

1 Answer 1


Maybe you could breadboard this out of some basic gates. One possibility: an oscillator giving the 200 Hz (5 ms) basic pace. Divide by four using a cascade of two J-K flip-flops (= a two-bit binary counter). Use an AND or NOR gate to detect a 00 or 11 binary on the output of the counter, and use that detection result to gate the 5ms signal (you may end up with short residual glitches, not sure. Would require a tiny further post-processing step). This should result in 3 pulses (edges) spaced 5 ms and a fourth pulse missing. Next, use that to trigger a single-shot with an RC cell for your variable timing constant, and use a potentiometer to tweak the pulse width.

[200 Hz clock] -> [1:4 divider with 00 detection] -> [00 gate] -> [single-shot]

Bi-phase means what? Two outputs like that? What shift between them? A tandem potentiometer might be used to tweak the pulse width in both channels.

And oh you'd need a discrete transistor circuit to level-shift this to 19 V. An op-amp could do it for slower signals, but sub-microsecond rail-to-rail pulses are probably too much to ask from a typical op-amp that can stand 19+V Vcc.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.