The maximum frequency that this can measure is about 8 MHz (at a 50% duty cycle). Despite the fact that this counts the frequency on one of the digital pins, I have found that it will quite happily measure sine and triangle waves providing that they have a suitable amplitude.
Although the version that I built is a standalone unit, this circuitry could be easily incorporated into another project such as a function generator.
Remove these ads by
Signing UpStep 1: Bill of materials
(2x) 10K resistors
(2x) 47uF electrolytic capacitors
(2x) 22pF ceramic capacitors
(1x) 1N4001 diode (any of the 1N400X series will do)
(1x) 16 MHz crystal
(1x) 7805 voltage regulator
(1x) ATmega328p-pu (programmed with the Arduino bootloader)
(1x) 2x16 LCD display (HD44780 compliant)
(1x) 28 pin DIL socket
(1x) SPST toggle/rocker switch
(1x) DC power socket
(1x) piece of stripboard 20 strips x 25 holes
(1x) project enclosure
(2x) 4mm banana sockets or (1x) BNC chassis-mount socket
The only tricky part to get for this project is the Atmel ATmega328p-pu microcontroller. Ordinarily this would not be a problem, but it has to have the Arduino bootloader installed on it. You can buy them on eBay very cheaply. You will also need a way to program the microcontroller. The easiest way to do this is using another Arduino board. See Step 5 for more details.










































Visit Our Store »
Go Pro Today »




Just built one. Great concept!
I happen to have a problem with mine. It won't measure the frequency. It only prints:
0 536 to the frequency area.
Would you happen to have any ideas what is wrong?
When you say it only displays 0536 in the frequency area, does it also display the first line of the LCD that should read 'Frequency /Hz' ?
Although you would expect it only to work with 0V-5V square/pulse waves as it is counting frequency at one of the digital pins, I have found that it will quite capably measure sine and triangle waves as well, provided they have a high enough amplitude.
http://www.instructables.com/id/Arduino-Frequency-Detection/
Adding a 'Period' mode would make this counter more useful while measuring frequencies of 100Hz and below. Should be a quick software fix.