实验五、电话机拨号程序的设è®?/p>
一、实验目çš?/p>
1.
理解电话机的拨号程序的声音合成原ç�?/p>
2.
掌握电话机的拨号程序的一般过程ã€?/p>
二、实验工å…?/p>
MATLAB
三ã€?/p>
实验内容
1
、利ç”?/p>
GUI
设计电话机拨号程序,作业要求ï¼?/p>
�/p>
具有
12
个电话键按钮ã€?/p>
�/p>
具有电话号码显示的编辑框或文本框ã€?/p>
�/p>
可以生成每个个电话键的波形ã€?/p>
(
采样频谱和波形点数参考给定代ç ?/p>
)
�/p>
可以显示电话键的波形频谱
(
参考自学作ä¸?/p>
5)
�/p>
可以听见每个电话音的声音
�/p>
将一串电话号码的波形进行合成和显示,能进行谱图显ç¤?/p>
�/p>
界面美化技术进行界面美åŒ?/p>
�/p>
程序主界面中含有自己的学号和姓名
�/p>
自己可以添加自己想到的功èƒ?/p>
2
、实验报告内容,包括主界面设计,界面空间
tag
设计,代码设计和运行效果截图(去æŽ?/p>
所有注释和空行ï¼?/p>
。同时提交源代码文件ï¼?/p>
*.fig
å’?/p>
*.m
ï¼?/p>
3
、部分参考代ç ?/p>
function
[num10signal]=call10number(phonenumber),
N=204;
n=0:N-1;
fs=8192;
F_c=[697;770;852;941]*ones(1,3);
F_c=F_c';F_c=F_c(:)';
F_r=[1209;1336;1477]*ones(1,4);
F_r=F_r(:)';
F=2*pi/fs*[F_c;F_r];
num10signal=[];
for
i=1:1:size(phonenumber,2),
signal=[];
switch
phonenumber(1,i),
case
{
'1'
,
'2'
,
'3'
,
'4'
,
'5'
,
'6'
,
'7'
,
'8'
,
'9'
}
signal=cos(F(:,str2num(phonenumber(1,i)))*n);
signal=sum(signal);
signal=[signal zeros(size(signal))];
case
'*'