How can I make a frequency divider with multiple outputs with these conditions:

  • no microcontroller
  • can use up to 4 SOIC-16 chips
  • or up to 8 SOIC-8 (or any combo)
  • can use one crystal/oscillator
  • 9v supply
  • can use one 5V voltage reg. if needed
  • 1 mA output current is enough
  • only 1 output will be needed.
  • output selection mechanism is not important. (dip switches or multiple pcb trace routing/soldering @ production time)

Outputs: (in 1/f unit)

  1. 8~12 seconds
  2. 30~45 seconds
  3. 2~5 minutes
  4. 10~15 minutes
  5. 30~60 minutes
  6. 2~3 hours
  7. 4~6 hours
  8. 9~12 hours
  9. 18~24 hours
  10. 36~48 hours

I only have this idea: I calculated LCM (least common multiplier) of outputs in seconds. This number gives me a frequency where I can divide into specific divisors and each gives a desired output. But I need different custom dividings (no single counter IC can take care of all outputs) Found some counter ICs which can be adjusted to divide the input to a desired divisor. But this means I need 10 chips. which I don't have space for.

Since the outputs are roughly x2 multiplier of each other, and each output frequency can be chosen from a range, I guess common timer/counter ICs can do the job. But don't have any experience in solving such timing/counting problems.

The important requirement is the wide range of outputs from option 1 (a few seconds) to option 10 (a day or two). Also RC timers are not preferred, because this little circuit will be made in hundred quantity, and all should be similar in timings. i.e. if output 1 is designed for 1/9 Hz (t=9s), it should trigger exactly every 9 seconds (up to the crystal accuracy) in all circuits.

i.e these ranges are freedom of design, but not freedom of circuit operation.

  • \$\begingroup\$ Are all 100 units to have the same timing for the 10 outputs? Or is this 'user controllable'? What you write reads to me (I may have missed something, though) like you have some tolerance in the ranges, but once that is set in stone all 100 devices should do the same thing and the user cannot adjust the output timing. It kind of reads as though you want something like the CD4060, almost. \$\endgroup\$
    – jonk
    Nov 24, 2022 at 20:17
  • \$\begingroup\$ User can choose from the output options, but all units should act the same. Output 1 from all 100 units should be equal in frequency. \$\endgroup\$
    – Bikay
    Nov 24, 2022 at 20:19
  • 1
    \$\begingroup\$ Why can't you use a microcontroller? Why no more than 4 16-pin devices? Where are all of these restrictions coming from? Is this a homework assignment? \$\endgroup\$ Nov 24, 2022 at 20:19
  • 2
    \$\begingroup\$ Why are microcontrollers not an option? This is exactly the kind of problem that they would be perfect for. \$\endgroup\$
    – Hearth
    Nov 24, 2022 at 20:31
  • 1
    \$\begingroup\$ @jonk Sure, but I'm wondering what the reason is in this particular instance, because sometimes a reluctance to use microcontrollers is due to merely being intimidated by them (which, yeah I understand, I'm intimidated by them myself and avoid them whenever possible, but this is an application where I would still use one). There may be good reasons, or bad reasons the person is unwilling to compromise on, and that's fine! But it's possible there might be good reasons to use them, too. \$\endgroup\$
    – Hearth
    Nov 24, 2022 at 20:47

1 Answer 1


You know that the dynamic range is anywhere from \$\frac{129600\:\text{s}}{12\:\text{s}}\le \alpha \le \frac{172800\:\text{s}}{8\:\text{s}}\$ or \$10800 \le \alpha \le 21600\$. In keeping with simple binary division, this pretty much tells you that you will be using \$\alpha=2^{14}=16384\$. So you need something that can deliver the span from 1 to 16384 (or some multiple) as divisors. That's 15 divisor taps (\$2^0\$ through \$2^{14}\$) out of which you need at least 10 of them to hit your sweet spots.

To start, find that \$\frac{172800\:\text{s}}{2^{14}}\approx 10.55\:\text{s}\$. So that already means you don't get to have \$11\:\text{s}\$. But at least that figure is within your lowest end span. Also, \$8\:\text{s}\cdot 2^{14}\approx 131072\:\text{s}\$. So let's build a table:

$$\begin{array}{rcrcrcc} \text{tap}&&\text{min}&&\text{max}&&\text{out?}\\\hline 0&&8&&10.55&&*1 \\ 1 && 16&&21.09 \\ 2 && 32 && 41.19&&*2 \\ 3&& 64 && 83.38 \\ 4&& 128&&168.8&&*3 \\ 5&& 256&&337.5 \\ 6&&512&&675.00&&*4 \\ 7&&1024&&1350.00 \\ 8&&2048&&2700.00&&*5 \\ 9&&4096&&5400.00 \\ 10&&8192&&10800.00&&*6 \\ 11&&16384&&21600.00&&*7 \\ 12&&32768&&43200.00&&*8 \\ 13&&65536&&86500.00&&*9 \\ 14&&131072&&172800.00&&*10 \end{array}$$

This suggests that you find and use a \$60.000\:\text{kHz}\$ tuning fork crystal. That can be divided down by \$32768\$ to produce a nice \$1.83105469\:\text{Hz}\$ input to a 74HC4060, which when divided down by 16 yields \$8.73813332\:\text{s}\$ at the first tap of the first IC. (I'm listing more than the 10 available taps on the assumption that you can work out how to apply two of these ICs to get the rest.)

$$\begin{array}{rcrcrcc} \text{binary tap}&&\text{output number}&&\text{time}\\\hline 0&&1&&8.738\:\text{s} \\ 2 && 2&& 34.953\:\text{s} \\ 4&& 3&& 2\:\text{m }19.810\:\text{s} \\ 6&&4 && 9\:\text{m }19.241\:\text{s} \\ 8&&5&&37\:\text{m }16.962\:\text{s} \\ 10&&6&&2\:\text{h }29\:\text{m }7.849\:\text{s} \\ 11&&7&&4\:\text{h }58\:\text{m }15.697\:\text{s} \\ 12&&8&&9\:\text{h }56\:\text{m }31.394\:\text{s} \\ 13&&9&&19\:\text{h }53\:\text{m }2.788\:\text{s} \\ 14&&10&&1\:\text{d }15\:\text{h }46\:\text{m }5.576\:\text{s} \end{array}$$

Which meets your requirements.

The 74HC4060 is a \$5\:\text{V}\$ part and is available in appropriate packaging, I think, and accepts an external crystal controlled clock or derivative of same. (Also RC, which you say you cannot use.) You can chain two of them so that you get the necessary overlapping divisors you need.

Mostly, I just wanted to list out the issues I see in the hopes that it helps to clarify some of your options.

Thought I might add a behavioral diagram:


simulate this circuit – Schematic created using CircuitLab

The bubbles shown provide your outputs.

(And now you see why an MCU is indicated as a single IC would do the job. Not sure what kind of precision you require, but some of them come with burned-in calibration tables for their DCO or RC oscillators to get you within about 2% or so.)

  • \$\begingroup\$ Thanks, at least I learnt how to deal with these kind of problems. \$\endgroup\$
    – Bikay
    Nov 25, 2022 at 5:10

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