Matlab

DTMF SIGNAL GENERATION

The DTMF stands for “Dual Tone Multi-Frequency”, and maybe a method of representing digits with tone frequencies, so as to transmit them over an analog communications network, for instance, a telephone line. In telephone networks, DTMF signals are wont to encode dial trains and other information. Dual-tone Multi-Frequency (DTMF) signaling is widely used for voice communications control and is mostly used worldwide in modern telephony to configure switchboards and to dial numbers. It is also utilized in systems like voice mail, electronic message, and telephone banking. The DTMF signal is considered as the sum of two sinusoids – or tones – with frequencies taken from two mutually exclusive groups. Where these frequencies are chosen to stop any harmonics from being incorrectly detected by the receiver as another DTMF frequency. while each pair of tones consist of one set frequency of the low group (697 Hz, 770 Hz, 852 Hz, 941 Hz) and another set frequency of the high group ( 1336 Hz, 1477Hz,1209 Hz) and represents a unique symbol.

Program:

clc;

clear all;

close all;

t = -2:0.05:2;

x=input(‘enter the input number’);

fr1=697;

fr2=770;

fr3=852;

fr4=941;

fc1=1209;

fc2=1336;

fc3=1477;

fc4=1633;

y0 = sin(2*pi*fr4*t) + sin(2*pi*fc2*t); % 0

y1 = sin(2*pi*fr1*t) + sin(2*pi*fc1*t); % 1

y2 = sin(2*pi*fr1*t) + sin(2*pi*fc2*t); % 2

y3 = sin(2*pi*fr1*t) + sin(2*pi*fc3*t); % 3

y4 = sin(2*pi*fr2*t) + sin(2*pi*fc1*t); % 4

y5 = sin(2*pi*fr2*t) + sin(2*pi*fc2*t); % 5

y6 = sin(2*pi*fr2*t) + sin(2*pi*fc3*t); % 6

y7 = sin(2*pi*fr3*t) + sin(2*pi*fc1*t); % 7

y8 = sin(2*pi*fr3*t) + sin(2*pi*fc2*t); % 8

y9 = sin(2*pi*fr3*t) + sin(2*pi*fc3*t); % 9

y_start = sin(2*pi*fr4*t) + sin(2*pi*fc1*t); % *

y_canc = sin(2*pi*fr4*t) + sin(2*pi*fc3*t); % #

if (x==1)

 plot(t,y1)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==2)

 plot(t,y2)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==3)

 plot(t,y3)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==4)

 plot(t,y4)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==5)

 plot(t,y5)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==6)

 plot(t,y6)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==7)

 plot(t,y7)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==8)

 plot(t,y8)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==9)

 plot(t,y9)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==0)

 plot(t,y0)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

elseif (x==11)

 plot(t,y_start)

 xlabel(‘time(t)’)

  ylabel(‘amplitude’)

 elseif (x==12)

 plot(t,y_canc)

 xlabel(‘time(t)’)

 ylabel(‘amplitude’)

else

 disp(‘enter the correct input’)

 end

Rajeshwari Chiluveru

Share
Published by
Rajeshwari Chiluveru

Recent Posts

Google Spam Update 2025: Impact, Recovery Guide & SpamBrain Explained

Google released a spam update on 26th of August 2025 and this is affecting a…

2 weeks ago

Google Experiments with Black Sitelink Colors instead of Blue

Google keeps on testing google search display all the time and this time we are…

1 year ago

What are Template Tags in WordPress? How to Use Template Tags

In wordpress if you are developing new or custom wordpress theme or wordpress plugin then…

2 years ago

Google Search Indexing Issues Started on 31st January to February 2024

If you are experiencing indexing issues of your website then you are not alone and…

2 years ago

Create QR Code for Pages & Post using Plugin in WordPress

On your wordpress website if you want to generate qr code for pages and posts…

2 years ago

Add Google Search Console HTML File Upload on WordPress

If you are trying to verify your WordPress website with google search console with html…

2 years ago