Frequency counter for shortwave radio.

I have been trying to construct a shortwave radio and I have been having trouble to get the tuning to work. In order to test my tuning circuit I would like to add an arduino frequency counter that measures in the range of 10-30MHz.

Is there a way to test these high frequencies with the standard arduino and serial monitor?


Not without external frequency counting electronics. The Arduino runs at 16 MHz thus it cannot measure 30 MHz frequencies.

The Gadget Shield: accelerometer, RGB LED, IR transmit/receive, speaker, microphone, light sensor, potentiometer, pushbuttons

Why don't you just do a search for frequency counter and see what you get? The price of a counter for that range might be instructive.

Could I do this? With a pre-scaler? Yes. If you are asking the question the way you are I doubt I could help in any meaning full way.

You need a conditioning circuit and a divide-by-ten logic chip. The conditioning circuit amplifies the signal to logic level and much more importantly isolates the local oscillator from the digital circuitry (you don't want digital hash leaking back into the local oscillator, the whole performance of a radio relies on a clean oscillator signal). Old fashioned unbuffered CD4xxx gates make good analog amplifiers btw - but not sure they go to 30MHz.

There are quite a few divide by ten chips in 74xx and 4xxx series. Once you've divided by 10 or 100 you can easily detect the frequency using a ATmega counter. Use timer1 as its got 16bits rather than 8.

Very good decoupling and a totally separate supply for the Arduino are pretty much mandatory to avoid injecting noise into the radio RF circuitry.

The other thing I should mention is that I have made a frequency counter using a SN74LV8154N counter chip - which I think is good to 40MHz and has 2 16bit counters that can be stacked to make a 32bit counter (the micro controller only needs to sample it once a second (but it uses a LOT of pins to interface to as its parallel out!)