您所在位置: 网站首页 / 双音多频DTMF信号的产生与检测.pdf / 文档详情
双音多频DTMF信号的产生与检测.pdf 立即下载
2024-12-01
约3.8千字
约2页
0
624KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

双音多频DTMF信号的产生与检测.pdf

双音多频DTMF信号的产生与检测.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

2008年第8期大众科技No.8,2008
(总第108期)DAZHONGKEJI(CumulativelyNo.108)

双音多频DTMF信号的产生与检测
苑毅,黄珍
(甘肃联合大学理工学院,甘肃兰州730000)

【摘要】文章讨论一种双音多频DTMF信号产生和解码的设计方法。通过静音信号对双音频信号区分编码,解码中采用
Goertzel算法,在输入输出中提出缓存概念,采用改进的增益控制,省去了溢出检查,从而提高了速度。
【关键词】DTMF;Goertzel算法;缓存概念
【中图分类号】TN911.7【文献标识码】A【文章编号】1008-1151(2008)08-0055-02

(一)引言ω0=2π*f0/fs,fs为采样频率,f0为输出正弦波的频率,A
所谓双音多频(DTMF),就是用两个频率——行频和列频为输出正弦波的幅度。该式初值为y(-1)=0,y(-2)=-Asinω0。
来表示电话机键盘上的一个数字。DTMF电话的指令正在迅速利用差分方程由频率表计算出相应的系数和初始条件装入
的取代脉冲指令。除了在电话呼叫信号中使用外,DTMF还广DSP,按叠代算法得到正弦序列输出,将2个输出叠加即可得
泛的使用在交互式控制应用,例如电话银行、电子邮件甚至到双音频的输出。从而仅需要2个振荡器,就能够产生所需
家电远程控制等,用户可以从电话机发送DTMF信号来做菜单要的8个音频信号。典型的DTMF频率范围是700~1700HZ,
选择。本文讨论一种利用DSP对DTMF信号产生和解码的设计选取8kHZ作为采样频率,满足采样条件。DTMF编解码器的工
方法。为了产生DTMF信号,DSP用软件产生两个正弦波叠加作就是将一串键盘的输入(数字)转换成为一串适当持续时
在一起后发送,解码时DSP则采用改进的Goertzel算法,从间的音频信号对;由解码器检测该音频信号对,并确认相应
频域搜索两个正弦波的存在。的数字。
(二)DTMF信号的产生
开始
电话键盘上的每一个键,都由其行频和列频唯一的确定,

频率图如下所示。
静音信号信号选择择音频信号

表1电话键盘频率表

列1209133614771633查询时间

行中断
697123A
查询时间
770456B新数字中断
852789C
941*0#D
解包音频样本



DTMF编解码器的音频信号产生部分是基于两个二阶的数静音样本返回
字正弦波振荡器,一个产生行频,一个产生列频。振荡器的
框图如下。
图2DTMF编解码器流程图
从而数字与数字之间必须要有适当长度的静音信号以作
区分。因此程序的设计要产生两个信号:双音频信号和静音
信号,一个音频和静音信号对表示一个数字。由定时器变量
指定信号的持续时间,每个数字信号传送结束后,立即从数
字缓存中调出一个新的数字并解包。将该数字映射到行/列音
频信号并装入指针,指向振荡器属性表的相应地址。
整个程序流与接收中断服务子程序同步,提供准确的时
图1振荡器框图钟,用于实时处理和恒定的样本输出。在中断服务子程序完
从而数字振荡器二阶系统函数的差分方程为:成后,就按照发送顺序输出信号。查询方式检查定时器变量
y(n)=-a1*y(n-1)-a2*y(n-2),其中a1=-2cosω0,a2=1,决定发送时间是否终了:控制继续发送或者发送完毕初始化

【收稿日期】2008-05-19
【作者简介】苑毅(1979-),男,湖北武汉人,甘肃联合大学理工学院电信系教师,从事自动控制以及电子技术教学;黄
珍(1980-),女,湖北黄冈人,甘肃联合大学理工学院电信系教师,从事计算机软硬件教学。

-55-
下一个信号的传输。
(三)DTMF信号的检测开始
主要任务是在输入信号中检测DTMF信号,并将其转换为
实际的数字。解码过程本质上是连续的过程,需要在输入的缓存器查询
数据流中连续的搜索DTMF信号的存在。为了保证检测的有效
缓存器接收
性,降低算法的复杂度,可以采用Goertzel算法。计算数字

信号的频谱可以采用DFT及其快速算法FFT,而在实现DTMF
衰减强信号
解码时,采用Goertzel算法要比FFT更快。通过FFT可以计

算得到信号所有谱线,了解信号整个频域信息,而对于DTMFGoertzel滤波
信号只用关心其8个行频/列频及其二次谐波信息即可(二次
谐波的信息用于将DTMF信号与声音信号区别开)。此时有效性检查
Goertzel算法能更快速的在输入信号中提取频谱信息。
返回
DTMF解码器的实现,采用与编码器类似的任务安排,与
接收中断服务子程序同步完成。输入数据缓存器接收数据,
图3DTMF信号检测流程图
一旦装满就将输入数据状态字置1。通过查询输入数据状态字
调用初始化函数来初始化DTMF检测过程。然后将输入数据缓(四)结束语
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

双音多频DTMF信号的产生与检测

文档大小:624KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用