方波的matlab实现时域采样定理的代码
时间: 2023-10-26 13:17:57 浏览: 181
应用matlab实现连续信号的采样与重构
以下是一个简单的 MATLAB 代码实现方波的时域采样定理:
```matlab
% 定义方波参数
f = 1; % 频率为1Hz
T = 1/f; % 周期为1/f
A = 1; % 幅值为1
% 生成方波
t = 0:0.001:2*T; % 时间向量
y = square(2*pi*f*t); % 使用square函数生成方波
% 绘制原始方波
figure
subplot(2,1,1)
plot(t, y)
xlabel('Time (s)')
ylabel('Amplitude')
title('Original Square Wave')
% 对方波进行采样
fs = 10*f; % 采样频率为10f
Ts = 1/fs; % 采样时间为1/fs
n = 0:Ts:2*T; % 时间向量
y_sampled = square(2*pi*f*n); % 采样后的方波
% 绘制采样后的方波
subplot(2,1,2)
stem(n, y_sampled)
xlabel('Time (s)')
ylabel('Amplitude')
title('Sampled Square Wave')
```
这个代码使用了MATLAB的`square`函数生成方波。`square`函数的第一个输入参数是角频率。在这个例子中,我们将其设置为2πf,以产生一个频率为f的方波。`plot`函数用于绘制原始方波。然后,我们使用`square`函数对方波进行采样,并绘制采样后的方波。在绘制中,原始方波和采样后的方波都被绘制在同一张图上,以便比较它们之间的差异。
阅读全文