一、实验目的 1
了解 MATLAB 的基本操作
利用 MATLAB 实现正弦信号采样; 3
利用 MATLAB 编写卷积函数 myconv
二、实验条件 PC 机,MATLAB7
0 三、实验内容 (一)函数文件与脚本文件的定义,正弦信号的采样 函数文件代码: function seqs=mysampling(Fs,L,Fx) t=1/Fs:1/Fs:L/Fs; t1=0:0
001:L/Fs; x=sin(2*pi*Fx*t); x1=sin(2*pi*Fx*t1); plot(t1,x1),hold on;stem(t,x,'r');hold off; 脚本文件代码: Fs=40; Fx=20; L=15; for Fx=20:10:80, mysampling(Fs,L,Fx); pause, End 运行结果: 实验中遇到的问题及改正: function seqs=mysampling(Fs,L,Fx) t=1/Fs:1/Fs:L/Fs; x=sin(2*pi*Fx*t); plot(t,x),hold on;stem(t,x,'r');hold off; 一开始并没有添加t1=0:0
001:L/Fs;x1=sin(2*pi*Fx*t1);两行代码,想利用t=1/Fs:1/Fs:L/Fs;x=sin(2*pi*Fx*t);生成的函数直接作为需要抽样的原函数,但是t 的采样间隔太大,没法生成平滑的正弦曲线,所以导致最后仿真出来的图像中出现不光滑的正弦曲线
经过思考找出问题后,另外编写了一个正弦函数,设定的采样间隔为0
001 后,仿真出来的图像中就出现了光滑的正弦曲线
(二)编写卷积函数myconv Conv函数代码: function y=myconv1(h,x) n=length(x); k=length(h); %定义序列长度 for m=1:1: