收藏 分享(赏)

数字信号处理实验六--数字信号处理在双音多频拨号系统中的应用.doc

上传人:精品资料 文档编号:10555226 上传时间:2019-11-28 格式:DOC 页数:10 大小:172.92KB
下载 相关 举报
数字信号处理实验六--数字信号处理在双音多频拨号系统中的应用.doc_第1页
第1页 / 共10页
数字信号处理实验六--数字信号处理在双音多频拨号系统中的应用.doc_第2页
第2页 / 共10页
数字信号处理实验六--数字信号处理在双音多频拨号系统中的应用.doc_第3页
第3页 / 共10页
数字信号处理实验六--数字信号处理在双音多频拨号系统中的应用.doc_第4页
第4页 / 共10页
数字信号处理实验六--数字信号处理在双音多频拨号系统中的应用.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、实验六 数字信号处理在双音多频拨号系统中的应用双音多频(Dual Tone Multi Frequency, DTMF)信号是音频电话中的拨号信号,由美国 ATclc;开 始输入 8 位电话号码检测与 m 位号码相符的低频带检测与 m 位号码相符的高频带构成双音频信号 )80/2sin()80/2sin()(1ffx 用 Goertzel 算法计算八点 DFT 样本画出 8 点 DFT 样本幅度检测 8 点 DFT 模值查找 8 点样本所对应的低频带与高频带输出检测出的 8 位电话号码结 束tm=1,2,3,65;4,5,6,66;7,8,9,67;42,0,35,68; % DTMF信号代表

2、的 16个数N=205;K=18,20,22,24,31,34,38,42;f1=697,770,852,941; % 行频率向量f2=1209,1336,1477,1633; % 列频率向量TN=input(键入 6位电话号码= ); % 输入 6位数字TNr=0; %接收端电话号码初值为零for l=1:6;d=fix(TN/10(6-l);TN=TN-d*10(6-l);for p=1:4;for q=1:4;if tm(p,q)=abs(d); break,end % 检测码相符的列号 qendif tm(p,q)=abs(d); break,end % 检测码相符的行号 pendn=

3、0:1023; % 为了发声,加长序列x = sin(2*pi*n*f1(p)/8000) + sin(2*pi*n*f2(q)/8000);% 构成双频信号sound(x,8000); % 发出声音pause(0.1) % 接收检测端的程序X=goertzel(x(1:205),K+1); % 用 Goertzel算法计算八点 DFT样本val=abs(X); % 列出八点 DFT向量subplot(3,2,l);stem(K,val,.);grid;xlabel(k);ylabel(|X(k)|) % 画出 DFT(k)幅度axis(10 50 0 120)limit = 80; %for

4、 s=5:8;if val(s) limit, break, end % 查找列号endfor r=1:4;if val(r) limit, break, end % 查找行号endTNr=TNr+tm(r,s-4)*10(6-l);enddisp(接收端检测到的号码为:) % 显示接收到的字符disp(TNr)运行程序,根据提示键入 6位电话号码 123456,回车后可以听见 6位电话号码对应的DTMF信号的声音,并输出相应的 6幅频谱图如图 10.10.1所示,左上角的第一个图在 k=18和 k=31两点出现峰值,所以对应第一位号码数字 1。最后显示检测到的电话号码 123456。6 位电

5、话号码 123456的 DTMF信号在8个近似基频点的 DFT幅度。1、实验内容 6 位电话号码的 DTMF双频拨号信号的生成和检测程序清单 exp6.m已经在实验指导中给出。运行程序,并输入 6位电话号码 123456,则输出相应的 6幅频谱图如图 10.10.1所示,左上角的第一个图在 k=18和 k=31两点出现峰值,所以对应第一位号码数字 1。其他 5个图请读者对照表 10.10.1和表 10.10.2,确定确定其对应的数字,验证程序输出的电话号码“123456”是正确的。2、实验内容 只要对 6位电话号码检测程序 exp6.m作如下修改,即可产生、检测和识别 8位电话号码。(1)将第

6、 8行改为 TN=input(键入 11位电话号码= );(2)将第 1012行改为for l=1:11;d=fix(TN/10(11-l); TN=TN-d*10(11-l); (3)将第 26行改为 subplot(6,2,l);(4)将第 36行改为 TNr=TNr+tm(r,s-4)*10(11-l);修改后的程序为 exp8.m,程序清单见程序集。运行程序 exp8.m,输入输入 8位电话号码 14079500,则输出相应的 8幅频谱图如图 10.10.2所示。最后显示检测到的电话号码14079500。数字信号处理(第三版)第十章 实验 6程序:exp8.m%clear all;cl

7、c;tm=1,2,3,65;4,5,6,66;7,8,9,67;42,0,35,68; % DTMF信号代表的 16个数N=205;K=18,20,22,24,31,34,38,42;f1=697,770,852,941; % 行频率向量f2=1209,1336,1477,1633; % 列频率向量TN=input(键入 11位电话号码= ); % 输入 11位数字TNr=0; %接收端电话号码初值为零for l=1:11;d=fix(TN/10(11-l); TN=TN-d*10(11-l); for p=1:4;for q=1:4;if tm(p,q)=abs(d); break,end

8、% 检测码相符的列号 qendif tm(p,q)=abs(d); break,end % 检测码相符的行号 pendn=0:1023; % 为了发声,加长序列x = sin(2*pi*n*f1(p)/8000) + sin(2*pi*n*f2(q)/8000);% 构成双频信号sound(x,8000); % 发出声音pause(0.1) % 接收检测端的程序X=goertzel(x(1:205),K+1); % 用 Goertzel算法计算八点 DFT样本val = abs(X); % 列出八点 DFT向量subplot(6,2,l);stem(K,val,.);grid;xlabel(k);ylabel(|X(k)|) % 画出 DFT(k)幅度axis(10 50 0 120)limit = 80; %for s=5:8;if val(s) limit, break, end % 查找列号endfor r=1:4;if val(r) limit, break, end % 查找行号endTNr=TNr+tm(r,s-4)*10(11-l);enddisp(接收端检测到的号码为:) % 显示接收到的字符disp(TNr)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报