## Feeds

266762 items (22 unread) in 27 feeds

Expand/Collapse

## Hack a Day

• #### Frequency Counting a Different Way

##### Tags:  arduino hacks

Counting frequency is one of those tasks that seems simple on the face of it, but actually has quite a bit of nuance. There are two obvious methods, of which the first is to count zero crossings for some period. If that period is one second you are done, otherwise it’s a simple enough case of doing the math. That is, if you count for half a second, multiply the result by 2, or if you count for 10 seconds, divide by 10. The other obvious method is to measure the period of a single cycle as accurately as you can. Then there’s this third method.from [WilkoL], which simultaneously counts a known reference clock alongside the frequency to be measured.  You can see the result in the video, below.

The first method is easy but the lower the frequency you want to measure, the longer you have to count to get any real resolution. Also, you need the time base to be exact. For the second method, you need to be able to make a highly precise measurement. The reason [WikolL] chose the third method is that it doesn’t require a very precise time base — a moderately accurate reference oscillator will do. The instrument gets good resolution quickly at both high and low frequencies.

The key to making the measurement is a clever way of connecting a D flip flop in such a way that it counts the high frequency reference clock and the lower frequency of interest for a fixed period of time. The fixed period doesn’t have to be very accurate. You wind up with two counts: How many input clocks you saw over the period and how many reference clocks. Since you know the frequency of the reference clock, the rest is simple math.

The real danger to projects like this is you can quickly get obsessed with measuring frequency and time. Of course, we’ve seen plenty of gated counter designs.