Is a 555/6 suitable for generating a 1-3000Hz square wave from 0-5V control voltage

The goal is to use a control voltage from 0-5V to generate a square wave signal from 1 (ideally, but around 10 would be acceptable) to 3000 Hz (linearly, although I could work around it not being linear).

I've been experimenting with a 555 (556 actually) and can easily achieve that by altering R1, R2 and C, but I need to keep those fixed, as the only variable input I'll have is the voltage.

Duty cycle is not particularly critical here although around 50:50 would be nice - it's to control a stepper motor driver which needs a minimum 1.5uS pulse, so only the most ridiculous duty cycle would not conform at those frequencies.

I've looked at the formula at What is the equation for the 555 timer control voltage? (the one at the top of tardate's answer; the one in the question appears to be wrong) and by applying it it appears clear that the range I want is not possible with just Vcontrol.

I'm open to using both timers in the 556 if that could work, but I haven't been able to figure out a solution.

If a 555 is just not appropriate for this, can someone suggest an alternative? I could always dust off the PIC programmer and get it to do this but I was hoping there was a simpler alternative.

• Seems that your goal is to design a VCO (Voltage controlled oscillator). Google "555 vco" or go for 566 IC. Commented Oct 18, 2016 at 19:44
• Please provide a circuit diagram with the tool Commented Oct 18, 2016 at 19:44
• 3.5 magnitudes is an awful lot of frequency range for a 555... Commented Oct 18, 2016 at 19:51
• Dust off the PIC. It is your "simpler alternative". Commented Oct 18, 2016 at 20:27
• Honestly, if it's for controlling a stepper, I wouldn't go for a VCO. You'd rather use any decent MCU with a PWM output (and eventually an ADC, if you really want to keep the analog input control). Design will be much simpler, and you'll achieve a much wider frequency range.
– dim
Commented Oct 18, 2016 at 20:38