matlab 实现电话拨号

1.创建GUI工程

matlab 实现电话拨号_第1张图片

2.布局添加示波器控件

matlab 实现电话拨号_第2张图片

3.布局添加按键

matlab 实现电话拨号_第3张图片
matlab 实现电话拨号_第4张图片

布局如下
每个数字和英文字母Button的Tag和它显示的数字一致,比如按键1的Tag就是pushbutton1,按键A的Tag为pushbuttonA,按键#的Tag为pushbuttonJin,按键*的Tag为pushbuttonStar。
matlab 实现电话拨号_第5张图片

4.写每个Button的回调函数

matlab 实现电话拨号_第6张图片
回调如下:

function pushbutton1_Callback(hObject, eventdata, handles)
    Fs=44100;dt=1.0/Fs;
    T=0.5;N=T/dt;
    t=[0:N-1]/N;% [0:N-1]的意思是一个数组,数组元素为0到N-1[0:N-1]/N的意思是将这个数组中的每一个元素都除以N
    %disp(num2str([0:N-1]));%打印查看[0,N-1]的输出
    %disp(num2str(t));%打印查看[0,N-1]/N的输出
    x1=0.3*sin(2*pi* 1209 *t);
    x2=0.3*sin(2*pi* 697 *t);
    x=x1+x2;
    plot(t,x,'b','LineWidth',1.5);
    axis([0,0.01,-0.5,0.5]);
    grid on;
    wavplay(x,Fs);

其中 x1=0.3sin(2pi* 1209 t); 和 x2=0.3sin(2pi 697 *t); 中的频率就是取自下面这张图中按键1对应的两个频率。
matlab 实现电话拨号_第7张图片
同理可以实现其他的Button的回调
运行结果
按下按键,先播放声音,然后显示波形
matlab 实现电话拨号_第8张图片

你可能感兴趣的:(matlab数字信号处理,matlab,矩阵,开发语言)