程序1:
%在MATLAB中是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当采样时间间隔足够小时,这些离散的采样值就能较好地近似出连续信号,matlab中连续信号的显示实际上还是离散信号的显示,只是取样点特别
%多的时候,用线连接起来,显示出来的图形就比较圆滑,接近连续信号;如果取样点特别少,连接起来就会变成折线;
clear all; %这个其实可以没有,只不过以前出过问题,现在就加上!
N=; %这个是你举得信号的点数,随便你了
fs=; %这个是抽样频率,记得要高于信号中最高频率的2倍
t=(:N-)/fs;%信号时域横轴向量,以等间隔抽样时间1/fs为一系列时间点做横向坐标轴,因为信号的周期为1/,即0.05s,而1024点的抽样时间为20.48s,所以画出来的图形大概为400多个周期,周期太多,太集中
t1=(:)/fs; %显示出来后,看起来就像正方形。而且抽样时间为0.,一个周期为0.,所以一个周期内就取了3个点,一个周期的图形显示出来后明显是个折线图;如图subplot(,,);如果一个周期内多取一些点,图形就会越
t2=:0.000001:0.05;%接近原图形,如图subplot(,,);
f=(:N-)*fs/N; %信号频域横轴向量,不过待会要减半处理一下
x=sin(*pi*.*t); %想分析什么函数,自己写
x1=sin(*pi*.*t1);
x2=sin(*pi*.*t2);
y=abs(fft(x)); %频域分析,不过记得要求模
f=f(:N/); %减半了,根据那奎斯特抽样定理,抽样频率要高于信号中最高频率的两倍,才不会失真,因此频谱中(fs/,fs)为无用谱,故频域信号的定义域向量与值域向量都应该做减半处理。
y=y(:N/); %减半了
%subplot(,,) %画图
%plot(t,x);
%subplot(,,) %画图
plot(f,y);
%subplot(,,)
%plot(t1,x1);
%subplot(,,)
%plot(t2,x2);
程序2:
% 在MATLAB中是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当采样时间间隔足够小时,这些离散的采样值就能较好地近似出连续信号,matlab中连续信号的显示实际上还是离散信号的显示,只是取样点特别
%多的时候,用线连接起来,显示出来的图形就比较圆滑,接近连续信号;如果取样点特别少,连接起来就会变成折线;
clear all; %这个其实可以没有,只不过以前出过问题,现在就加上!
N=; %这个是你举得信号的点数,随便你了
fs=; %这个是抽样频率,记得要高于信号中最高频率的2倍
t=(:N-)/fs;%信号时域横轴向量,以等间隔抽样时间1/fs为一系列时间点做横向坐标轴,因为信号的周期为1/,即0.05s,而1024点的抽样时间为20.48s,所以画出来的图形大概为400多个周期,周期太多,太集中
t1=(:)/fs; %显示出来后,看起来就像正方形。而且抽样时间为0.,一个周期为0.,所以一个周期内就取了3个点,一个周期的图形显示出来后明显是个折线图;如图subplot(,,);如果一个周期内多取一些点,图形就会越
t2=:0.000001:0.05;%接近原图形,如图subplot(,,);
f=(:N-)*fs/N; %信号频域横轴向量,不过待会要减半处理一下
x=sin(*pi*.*t); %想分析什么函数,自己写
x1=sin(*pi*.*t1);
x2=sin(*pi*.*t2);
y=abs(fft(x)); %频域分析,不过记得要求模
f=f(:N/); %减半了,根据那奎斯特抽样定理,抽样频率要高于信号中最高频率的两倍,才不会失真,因此频谱中(fs/,fs)为无用谱,故频域信号的定义域向量与值域向量都应该做减半处理。
y=y(:N/); %减半了
subplot(,,) %画图
plot(t,x);
subplot(,,) %画图
plot(f,y);
subplot(,,)
plot(t1,x1);
subplot(,,)
plot(t2,x2);