dtmf编码matlab,DTMF的matlab实现

本文介绍了DTMF编码原理及MATLAB实现方法。通过生成不同频率的正弦信号组合,模拟电话拨号过程中的按键音。提供了详细代码,包括生成单个频率信号、组合按键音和保存音频文件等步骤。
摘要由CSDN通过智能技术生成

1,DTMF原理和产生思路

DTMF即双音多频。双音多频的拨号键盘是4×4的矩阵,每一行代表一个高频,每一列代表一个低频。用户每按一个键就发送一个高频和低频的正弦信号组合,比如在键盘上按“1”键,电话机就会发送一个697 Hz和1209 Hz的组合信号给电话交换机。每个按键的按键音包含着两个频率的信号,在生成时即可将两个频率的信号进行加和来生成DTMF信号。

c9389e20b7c4e31b808eac9b1e86c4cb.png

2,代码

fs=8000;%采样率

tk=0.5;%the time of the key按键的声音持续时间

t=0:1/fs:(tk-1/fs);%时间点

z=zeros(1,4000);%按键与按键之间空白时间

%--------------------生成每个频率的信号----------------------

s697=sin(2*pi*697*t);

s770=sin(2*pi*770*t);

s852=sin(2*pi*852*t);

s941=sin(2*pi*941*t);

s1209=sin(2*pi*1209*t);

s1336=sin(2*pi*1336*t);

s1477=sin(2*pi*1477*t);

s1633=sin(2*pi*1633*t);

%---------------------生成每个按键的多频----------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值