你好,您希望我使用中文来回答您的问题并给出 Matlab 代码吗?
对于第一个问题,0,1等概的单极性非归零NRZ信号,可以使用 Matlab 的 square 函数生成这种信号。例如,可以使用以下代码生成频率为 1 Hz 的 NRZ 信号:
fs = 1000; % 采样频率 t = 0:1/fs:1-1/fs; % 时间点 f = 1; % 信号频率 x = square(2pif*t); % NRZ 信号
可以使用 plot 函数画出信号的波形,并使用 fft 函数计算信号的功率谱。例如:
plot(t,x); % 画出信号波形 X = fft(x); % 计算信号功率谱 Pxx = abs(X).^2/length(x)/fs; % 计算功率谱密度 f = (0:length(x)-1)*fs/length(x); % 频率轴 plot(f,Pxx); % 画出功率谱
对于第二个问题,0,1等概的单极性归零RZ信号,可以使用 Matlab 的 pulstran 函数生成这种信号。例如,可以使用以下代码生成频率为 1 Hz 的 RZ 信号:
fs = 1000; % 采样频率 t = 0:1/fs:1-1/fs; % 时间点 f = 1; % 信号频率 duty = 0.5; % 占空比 x = pulstran(t,t,@rectpuls,duty); % RZ 信号
然后可以使用同样的方法画出信号波形和计算信号功率谱。