如何在Matlab中生成正弦波?

时间:2013-12-03 14:39:46

标签: matlab

如何在频率为1 HZ且采样频率为200 HZ且序列长度N = 1024的Matlab中生成正弦波?

N=1024;
fs=200;
f=1;
ts=1/fs;
t=-10:ts:10;
i=1:2:N;
x=sin(2*pi*f*i*t);

这是对的吗?

3 个答案:

答案 0 :(得分:2)

以下代码将创建1024个样本正弦波,频率为1Hz,采样率为200 Hz。

N=1024;
fs=200;
f=1;
ts=1/fs;
t = ts*(0:N-1);
x=sin(2*pi*f*t);
plot(t,x)

这应该描绘你想要的东西

答案 1 :(得分:1)

fs=200;
f=1;
N=1024;
ts=1/fs;
t = ts*(0:N-1);
x=sin(2*pi*f*t);

答案 2 :(得分:0)

f1 = 1 ;
N = 1024 ;
fs = 200 ;
ts = 1/fs ;
t = -(N/(2*fs)):ts:(N/(2*fs) ;
y = sin(2*pi*f1*t) ;
plot(t,y)

您不需要使用i来获取1024个样本。这可以通过为t选择正确的开始和结束值来完成。