Hello folks,

What is the best way to detect certain tones with a PIC?

In RTTY, there are two tones... they are the following:
2295 2125 hz.

I would like the PIC to detect the tones and differentiate between the two.

One idea, is to count the time between the the two "RISES" of a cycle, and if it is between a certain "time" it is a certain frequency.

Another way would be to trigger with a transistor the stage of "positive" side of the wave, and time how long it stayed triggered. (ignoring the negative side of the wave).

What I would like, is using as few components as possible (hopefully none but the PIC) to decern the two frequencies so that I may decode RTTY.

Usage of code such as RCTIME could be used to measure the state of when a pin is positive. And this time could be addressed as a certain frequency.

Even PUSIN can be used similar to RCTIME.


I will be pulling the Tones directly out of the audio jack of any receiver.


I am looking for some suggestions that would likely be the easiest, componentless, and reliable way to accomplish my little fun project.



Dwayne