Seminar Topics & Project Ideas On Computer Science Electronics Electrical Mechanical Engineering Civil MBA Medicine Nursing Science Physics Mathematics Chemistry ppt pdf doc presentation downloads and Abstract

Full Version: DTMF DECODER REFERENCE DESIGN
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
DTMF DECODER REFERENCE DESIGN

[attachment=49881]

Introduction

Using the 25 MIPS CPU and on-chip ADC, the C8051F300 can perform DTMF tone generation and decoding. The
combination of high performance and small size (3x3 mm) makes the C8051F300 an ideal choice for applications
requiring DTMF decoding or other CPU intensive tasks.
A reference design kit is available for this reference design. The kit includes the following:
DTMF Decoder Evaluation Board containing a DTMF generator and decoder, keypad, and 7-segment LED.
DTMF Decoder Kit User's Guide with step-by-step instructions for running the DTMF Demo on the DTMF
Decoder Evaluation Board.
Reference Design Kit CD containing the Silicon Laboratories Integrated Development Environment (IDE)
and an evaluation version of Keil C8051 Development Tools (assembler, 2 kB object code limited compiler,
and linker).
This reference design includes the following:
Background and theory of DTMF decoding using the Goertzel Algorithm.
Description of a software implementation on a C8051F300 MCU.
Full C source code for the DTMF decoder and generator. The software is included at the end of the
application note and in a separate Zip file (AN218SW.zip) containing the firmware in C and HEX file format.
The Zip file is available on the Reference Design Kit CD and on the Silicon Laboratories website.


DTMF Detection and Decoding

Detecting DTMF tones requires the capability to detect and differentiate between the 8 DTMF frequencies. It is also
important to have a technique of detecting and rejecting false tones caused by noise (e.g., speech). One of the
performance metrics used to evaluate DTMF decoders is talk-off error. Talk-off error is defined as the improper
detection of a DTMF tone due to speech or other forms of noise in the communication channel. One method for
distinguishing between DTMF tones and speech is checking for the presence of a second harmonic. If the second
harmonic is detected, then the signal can be rejected because true DTMF tones only contain fundamental tones.
Frequency detection is typically accomplished by applying the discrete fourier transform (DFT) to a time-domain
signal to extract frequency information. The DFT, and other transforms such as the fast fourier transform (FFT),
generate frequency information for the entire range of frequencies from dc to the sampling rate divided by two.
Performing a full DFT or FFT in real-time is complex, requires large amounts of memory, and is not suitable for an
8-bit microcontroller. Instead, the Goertzel Algorithm can be used to extract specific “bins” of a DFT from the input
signal without performing an entire DFT or FFT. The Goertzel Algorithm is very suitable for DTMF decoding since
the decoder is only concerned with detecting energy at the 8 DTMF frequencies and their second harmonics.
The Goertzel algorithm works on blocks of ADC samples. Samples are processed as they arrive and a result is
produced every N samples, where N is the number of samples in each block. If the sampling rate is fixed, the block
size determines the frequency resolution or “bin width” of the resulting power measurement. The example below
shows how to calculate the frequency resolution and time required to capture N samples:


Testing
The software implementation of the Goertzel algorithm has been tested for talk-off errors using the Bellcore™ digit
simulation test tape. For a 4 hour talk-off test with a calibration tone voltage of 72.5 mVRMS, no false hits were
detected. In another 4 hour test with a calibration tone voltage of 135.5 mVRMS, only 11 false hits were detected.
The software implementation in this reference design, running on the DTMF Decoder Evaluation Board, performs
very well with respect to the limits specified by the Bellcore™ test tapes.