欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 通讯论文 > 基于MSP430的嵌入式DTMF拨号解码器实现方案

基于MSP430的嵌入式DTMF拨号解码器实现方案

日期:2023-01-24 阅读量:0 所属栏目:通讯论文


摘 要:本文介绍了一种基于msp430的嵌入式dtmf拨号解码器实现方案。dtmf拨号部分使用4根i/o线的电阻网络,配合软件产生dtmf信号。利用msp430f133内置的adc,并采用改进的goertzel算法,实现dtmf信号的实时解码。该方案成本低、性能可靠,已经得到了实际应用。

关键词:dtmf拨号 dtmf解码 改进的goertzel算法 msp430f133

引言
dtmf(双音多频)信号是电话网中常用的信令,无论是家用电话、移动电话还是程控交换机上,多采用dtmf信号发送接收号码。dtmf技术还可以用于电力线载波通信等场合。可见,dtmf拨号和解码在通信系统及其它方面有着广泛的应用。通常dtmf信号的检测采用专用芯片或dsp来实现,但其成本较高。本文介绍了一种低成本的基于msp430f133的dtmf拨号解码器实现方案。 msp430f133是ti的一款16位risc结构mcu,最短指令周期为150ns,含有8kb flash rom,256b ram并内置12位adc。

dtmf信号
dtmf信号是将拨号盘上的0~9、a~d及*/e、#/f共16个字符,用音频范围的8个频率来表示的一种编码方式。8个频率分为高频群和低频群两组,分别作为列频和行频。每个字符的信号由来自列频和行频的两个频率的正弦信号叠加而成。频率组合方式如图1所示。

根据ccitt q.23建议,dtmf信号的技术指标是:传送/接收率为每秒10个号码,或每个号码100ms。每个号码传送过程中,信号存在时间至少45ms,且不多于55ms,100ms的其余时间是静音。在每个频率点上允许有不超过±1.5%的频率误差。任何超过给定频率 ±3.5%的信号,均被认为是无效的,拒绝承认接收。另外,在最坏的检测条件下,信噪比不得低于15db。

dtmf拨号
dtmf拨号部分的电路原理图如图2所示。电路主要由4根i/o线构成的电阻网络和滤波器组成。电阻网络构成4位的dac,高通滤波器和低通滤波器组成一个带通滤波器用来滤除双音频的谐波信号。在输出端采用600ω的1:1变压器与电话线接口,电话线的输出电平可通过改变rx来进行调节。

软件上使用查表方式模拟产生两个不同频率的正弦波。首先确定一个合适的采样间隔,对每个频率的正弦波进行采样并规格化成0~7(3位数据),制成相应的正弦表。正弦表的制定要保证合成信号的频率误差在±1.5%以内,同时使采样点数尽量少。为使波形失真度小,正弦表记录的总信号时间对应原始信号的整数个周期,并且采样起点选在正波形的峰值上。本设计采样间隔选定为122us,保证频率误差均在±1%以内,各个频率信号的采样点数及频率误差见图3所示。

dtmf拨号程序流程图如图4所示。

dtmf解码
采用软件方式进行dtmf解码,首先要将模拟信号转换成数字信号,然后再送入cpu处理。利用msp430f133内置的12位adc加上简单的接口就可以实现模数转换,adc接口电路如图5所示。其中应选1%精度的金属膜电阻。adc参考电压选内部2.5v:

dtmf解码可以通过计算所接收到的信号在8个既定频率点的频谱值来确定是否为有效的dtmf信号及接收到的是哪个号码。另外,需要通过一系列的有效性检验以防止误判。

fft可用来计算n点频率处的频谱值,但不适合于此处应用。因为它计算了许多不需要的值,计算量太大;而且为保证频率分辨率,fft的点数较大。另外,它不能按逐个样点的方式处理,不利于实时实现。

由于只需要知道8个特定点的频谱值,采用一种称为goertzel算法的dft算法可以有效地提高计算效率。它相当于一个含两个极点的iir滤波器,8个频点对应各自相匹配的滤波器,其传递函数为

然而goertzel算法还是有一个缺点,那就是它计算的是频率处的频谱值,而精确的频率值通常只能对应某个近似的整数k,为了达到要求的分辨率,就需要较大的样点数n。改进的方法是:修改传递函数,不计算角频率 处的频谱值,而计算精确角频率 处的频谱值。这样分辨率能达到数据自然加窗(矩形窗)的分辨率。它的传递函数为

改进的goertzel算法运算步骤如下:
1. 对每个采样点递归计算(n=0,1,…,n)

其初始条件是

2. 当n个样点采集并计算完成后,计算8个频谱值:

在选定采样频率为6khz基础上,选取n=86个样点即可达到所需的频率分辨率。这对应约15ms信号,可以保证一位号码能接收到两个完整的dtmf信号周期。

当8个频谱值计算出来后,还要进行dtmf有效性检验,以判定是否为有效的dtmf信号。有效性检验包括以下几项内容:(1)高、低频段的最大幅值都必须大于某个门限值,而且二者之和也要大于某个门限值。(2)高、低频段的最大幅值与各自频段其它三个幅值相比,其差值必须大于某个门限值。(3)逆向绞度检验即低频段最大幅值不得超过高频段最大幅值8db,标准绞度检验即高频段最大幅值不得超过低频段最大幅值4db。(4)高、低频段最大幅值之和与其它6个幅值之和之比,必须大于某个门限值。

若上述检验通过,判定当前周期dtmf信号有效,根据频率组合可确定是对应哪个号码。但要确认接收到一个有效的号码,还要满足两个条件,一是要有两个以上连续周期的有效且相同的dtmf信号,以保证信号持续时间,二是前面有足够的静音时间,以避免重复识别。

dtmf解码程序流程图如图6所示。

解码时每次迭代需要八次乘法,由于f133没有硬件乘法器,要用"移位加"做乘法,因此优化乘法运算将大大提高计算效率。优化从几个方面考虑:尽量使用寄存器寻址方式,充分利用150ns指令;另外每个频点的乘数 是固定已知的,因此"移位加"可以不用逐位循环并判断的方式,而用按位完全展开的方式以省去判断动作;此外,在前端增加简单的增益控制可以保证后续运算不发生溢出,省去溢出处理。经过上述优化,实现了dtmf的实时解码。

结语 该dtmf拨号解码器方案成本低、性能可靠,已经得到了实际应用。

参考文献
1. oppenheim a.v.等著,刘树棠等译. 离散时间信号处理(第二版),西安交通大学出版社,2001
2. dtmf tone generation and detection: an implementation using the tms320c54x,texas instruments,2000
3. msp430x1xx family use

r's guide, texas instruments,2003

附作者简介:
李锋垚:硕士,研究方向信号与信息处理;
文敏: 工程师,主要从事通信设备的研发;
牛王强:硕士,研究方向检测技术与自动化装置;
谢明果:硕士,研究方向通信与信息系统。

联系方式:
联系人:李锋垚
地址:西安市劳动南路88号旺园公寓2栋1918室
邮编:710068
电话:029-2374742 手机:(0)13570241965
电子邮件:@

本文链接:http://www.qk112.com/lwfw/jsjlw/txlw/261797.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学