实验五、电话机拨号程序的设计
一、实验目的
1. 理解电话机的拨号程序的声音合成原理 2. 掌握电话机的拨号程序的一般过程。
二、实验工具
MATLAB
三、实验内容
1、利用GUI设计电话机拨号程序,作业要求: ? 具有12个电话键按钮。
? 具有电话号码显示的编辑框或文本框。
? 可以生成每个个电话键的波形。(采样频谱和波形点数参考给定代码) ? 可以显示电话键的波形频谱(参考自学作业5) ? 可以听见每个电话音的声音
? 将一串电话号码的波形进行合成和显示,能进行谱图显示 ? 界面美化技术进行界面美化
? 程序主界面中含有自己的学号和姓名 ? 自己可以添加自己想到的功能
2、实验报告内容,包括主界面设计,界面空间tag设计,代码设计和运行效果截图(去掉所有注释和空行)。同时提交源代码文件(*.fig和*.m)
3、部分参考代码
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 '*'
signal=cos(F(:,10)*n); signal=sum(signal);
signal=[signal zeros(size(signal))]; case '#'
signal=cos(F(:,12)*n); signal=sum(signal);
signal=[signal zeros(size(signal))]; case '0'
signal=cos(F(:,11)*n); signal=sum(signal);
signal=[signal zeros(size(signal))]; otherwise disp('Unknown digit') end
signal=signal';
num10signal=[num10signal' signal']'; sound(signal,fs); end
四、疑难问题的解决和感想
五、团队合作与分工
独立工作 团队工作和分工 代码行数 自我打分(百分制)
其他人姓名,和分工合作情况
实验五、wav格式音乐播放器的设计
一、实验目的
1. 理解音乐播放器设计原理
2. 掌握运用matlab设计音乐播放器的过程。
二、实验工具
MATLAB
三、实验内容
1、利用GUI设计音乐播放器,作业要求: ? 具有音乐播放列表的功能(listbox)。 ? 具有添加和删除音乐的按钮。 ? 具有选定音乐名称播放。
? 具有上一首歌或下一首歌选择播放的功能 ? 具有顺序播放或循环播放的功能 ? 程序主界面中含有自己的学号和姓名 ? 自己可以添加自己想到的功能
2、实验报告内容,包括主界面设计,界面空间tag设计,代码设计和运行效果截图(去掉所有注释和空行)。同时提交源代码文件(*.fig和*.m) 3、
四、疑难问题的解决和感想
五、团队合作与分工
独立工作 团队工作和分工 代码行数 自我打分(百分制)
其他人姓名,和分工合作情况