📄 dtmf_goertzel.m
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% dtmf_goertzel.m - This program generates bin number of DTMF tone
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; close all;
% Low freq group: fL = 697, 770, 852, 941 Hz
fL = [697 770 852 941];
% High freq group: fH = 1209, 1336, 1477, 1633 Hz
fH = [1209 1336 1477 1633];
Fs = 8000;
N = 256; % 256-point DFT
kL = ceil ((fL*N)/Fs)
kH = ceil ((fH*N)/Fs)
index = [kL kH];
load tx_data_5;
% Use Goertzel algorithm to extract the digit info
mag_low = abs(goertzel(HT(1:N), kL)).^2;
[y_low,index_low]= max(mag_low);
mag_high = abs(goertzel(HT(1:N), kH)).^2;
[y_high, index_high] = max(mag_high);
% Select the keypad
key = [ '1' '2' '3' 'A'; '4' '5' '6' 'B'; '7' '8' '9' 'C'; '*' '0' '#' 'D'];
fprintf('The key detected is %c',key(index_low, index_high));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -