DTMF tone using matlab
253 views (last 30 days)
Show older comments
PHANI KUMAR.N
on 3 Oct 2016
Commented: Deema Hani
on 4 Jan 2022
can anyone tell me how to implement DTMF tone using matlab and i have to listen the tone
2 Comments
Deema Hani
on 4 Jan 2022
xK(t)=sin(2*3.4ft)+sin(2*3.4gt),
0<=t<=Td
1) Develop a function namde ss_(..)to produce the signal for one digit.The synatax of the function should be
x=ss_dtmf(n,t)
Accepted Answer
pavan chillapur
on 3 Oct 2016
Edited: Stephen23
on 3 Oct 2016
symbol = {'1','2','3','4','5','6','7','8','9','*','0','#'};
lfg = [697 770 852 941]; % Low frequency group
hfg = [1209 1336 1477]; % High frequency group
f = [];
for c=1:4,
for r=1:3,
f = [ f [lfg(c);hfg(r)] ];
end
end
Fs = 8000; % Sampling frequency 8 kHz
N = 800; % Tones of 100 ms
t = (0:N-1)/Fs; % 800 samples at Fs
pit = 2*pi*t;
tones = zeros(N,size(f,2));
for toneChoice=1:12,
% Generate tone
tones(:,toneChoice) = sum(sin(f(:,toneChoice)*pit))';
% Plot tone
subplot(4,3,toneChoice),plot(t*1e3,tones(:,toneChoice));
title(['Symbol "', symbol{toneChoice},'": [',num2str(f(1,toneChoice)),',',num2str(f(2,toneChoice)),']'])
set(gca, 'Xlim', [0 25]);
ylabel('Amplitude');
if toneChoice>9, xlabel('Time (ms)'); end
end
set(gcf, 'Color', [1 1 1], 'Position', [1 1 1280 1024])
annotation(gcf,'textbox', 'Position',[0.38 0.96 0.45 0.026],...
'EdgeColor',[1 1 1],...
'String', '\bf Time response of each tone of the telephone pad', ...
'FitBoxToText','on');
7 Comments
ammar ansari
on 19 Jun 2021
For sound you can use the code
keypad = tones(:,5),Fs,16; % 5 is button pressed on keypad
sound(keypad)
If multiple button on keypad are pressed like (5086477000) then
for i = [5 11 8 6 4 7 7 11 11 11]
p = audioplayer(tones(:,i),Fs,16);
play(p)
pause(0.5)
end
More Answers (0)
See Also
Categories
Find more on Applications in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!