DTMF实验报告.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DTMF实验报告

DTMF信号的产生及检测实验报告 --------在MATLAB环境下的仿真实现 学号:20072121016 专业:07电子信息工程 姓名:黎天送 一、实验目的: DTMF(Double Tone Multi Frequency,双音多频)作为实现电话号码快速可靠传输的一种技术,它具有很强的抗干扰能力和较高的传输速度,因此,可广泛用于电话通信系统中。但绝大部分是用作电话的音频拨号。另外,它也可以在数据通信系统中广泛地用来实现各种数据流和语音等信息的远程传输。此次的目的是研究其在 MATLAB下的仿真。 二、实验内容: 1、DTMF的原理 DTMF是用两个特定的单音频组合信号来代表数字信号以实现其功能的一种编码技术。两个单音频的频率不同,代表的数字或实现的功能也不同。这种电话机中通常有16个按键,其中有10个数字键0~9和6个功能键*、#、A、B、C、D。由于按照组合原理,一般应有8种不同的单音频信号。因此可采用的频率也有8种,故称之为多频,又因它采用从8种频率中任意抽出2种进行组合来进行编码,所以又称之为“8中取2”的编码技术。 ??????? 行频/Hz ???? 列频/Hz 1209 1336 1477 1633 697 1 2 3 A 770 4 5 6 B 852 7 8 9 C 941 * 0 # D 根据CCITT的建议,国际上采用的多种频率为687Hz、770Hz、852Hz、941Hz、1209Hz、1336Hz、1477Hz和1633Hz等8种。用这8种频率可形成16种不同的组合,从而代表16种不同的数字或功能键,具体组合见下表1: 2、DTMF 音频的产生及其解码 当按下一个数据键,例如“5”时,则产生频率为770HZ 和1336HZ 的两个正弦波,并叠加。在用MATLAB 仿真时,用查表法先建立拨号数字的表矩阵,以求出数字键对应的频率。在处理数字信号时,为了不使信号失真,取样频率要求大于或等于原信号频率的2 倍,对于电话音频信号的取样频率一般定为8kHz 。 DTMF 的解码用傅里叶变换( FFT),首先对接收到的数字信号作FFT分析, 计算出其幅频谱,取样频率fs =8kHz ,源程序: Fs=8000; t=(0:2000)/Fs; pit=2*pi*t; fc1=697;fc2=770;fc3=852;fc4=941;fr1=1209;fr2=1336;fr3=1477;fr4=1663; x=sin(fcn*pit);y=sin(frn*pit); --fcn,frn为上面所列的频率值 z=x+y; subplot(1,2,2) f=fft(z,1024);f1=fftshift(f); w1=513:1024;w=4000*(w1-512)/512; F=abs(f1(513:1024)); plot(w,F) axis([0,2000,-50,600]);grid sound(z) 接收端所检测到的信号源程序: function lts(f1,f2) %f1=770; %f2=1209; fs=8000; t=(0:800-1)/8000; b=sin(t*2*pi*f1)+sin(t*2*pi*f2); tm=[49,50,51,65;52,53,54,66;55,56,57,67;42,48,35,68]; N=205; k=[18,20,22,24,31,34,38,42]; X=goertzel(b(1:N),k+1); val=abs(X); limit=70; for r=1:4 if val(r)limit;break,end end for s=5:8 if val(s)limit;break,end end disp(接收端检测到的号码为:); y=setstr(tm(r,s-4)); disp(y); 例如:当点击B时 f1=770khz,f2=1663khz 检测到的号码为:

文档评论(0)

kakaxi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档