audio frequency tone detection in software


Closed Thread
Results 1 to 10 of 10

Hybrid View

  1. #1
    Join Date
    Feb 2006
    Location
    Gilroy, CA
    Posts
    1,530


    Did you find this post helpful? Yes | No

    Default

    I agree with Alain, sounds pretty difficult. But decoding can be done. Here is one dtmf decoding example in assembly: http://dtmf.voipintouch.net/content/dtmf.htm . It uses a 16F877, and a modified version of the Goertzel algorithm. Of course you would have to modify it to detect the time code tone for your application.

    Attached is microchips dtmf decoding app note AN257 (assembly) for PIC18F chips
    Attached Images Attached Images
    Attached Files Attached Files
    Last edited by ScaleRobotics; - 23rd May 2010 at 16:02.

  2. #2
    Join Date
    Nov 2009
    Location
    Dallas, Texas, USA
    Posts
    10


    Did you find this post helpful? Yes | No

    Default

    Thanks for the files.

    The problem that I see right off is that the PDF says that the worse case s/n ratio for that design is 23dB. That's quite reasonable for working with DTMF signals off a phone line, but not a source picked up using an AM shortwave radio.

    You guys have just about convinced me that any scheme using a plain digital PIC isn't gonna fly.

    There are lots of DTMF decoder chips, but I expect that they require a s/n ratio similar to that normally found on a phone line i.e. pretty good. Plus, hacking them to do 100 and 1000Hz might be a big problem seeing as how they were designed from the ground up to do DTMF.

    Other than the NE567s already in use, does anyone have any other ideas? Suggestions on development tools for DSP PICs that don't have a huge learning curve?

    Thanks again,

    Mike

  3. #3
    Join Date
    Oct 2004
    Posts
    440


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by mlmccauley View Post
    Suggestions on development tools for DSP PICs that don't have a huge learning curve?

    Thanks again,

    Mike
    Would a "pulse divide by" logic chip slow the pulse timing down enough to be of use to an 8 bit PIC?

    Norm

  4. #4
    Join Date
    Nov 2009
    Location
    Dallas, Texas, USA
    Posts
    10


    Did you find this post helpful? Yes | No

    Default

    The problem is not the speed/frequency of the signal. 100Hz and 1000Hz isn't all that fast, especially to a 30+MHz clock PIC. The signal is analog, not digital, and it's not at all clean.

    If it were a nice clean square wave, PULSIN would do the job great. But it's a distorted sine wave combined with a great deal of white noise.

    Thanks for the reply, at any rate,

    Mike

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts