用matlab画出下列数字基带信号的波形和功率谱: (1)0,1等概的单极性非归零NRZ信号; (2)0,1等概的单极性归零RZ信号。
时间: 2024-02-20 14:00:42 浏览: 82
matlab_通信原理实验软件仿真实验_单极性归零码(RZ)的波形及其功率谱_单极性不归零码(NRZ)的波形及其功率谱
5星 · 资源好评率100%
好的,我可以帮你回答这个问题。但是需要说明的是,作为一个语言模型AI,我没有能力直接画图,但是我可以告诉你具体的MATLAB代码和步骤。
首先是第一问,0,1等概的单极性非归零NRZ信号的波形和功率谱。
1. 首先生成随机的0,1序列:
```matlab
N = 1000; % 信号长度
data = round(rand(1,N));
```
2. 将0映射成-1,1不变,得到单极性非归零NRZ信号:
```matlab
s = 2*data-1;
```
3. 画出波形:
```matlab
t = 0:N-1;
plot(t,s);
axis([0 N -2 2]);
```
4. 计算功率谱:
```matlab
fs = 100; % 采样率
[P,f] = periodogram(s,[],[],fs,'power');
plot(f,P);
```
接下来是第二问,0,1等概的单极性归零RZ信号的波形和功率谱。
1. 生成随机的0,1序列:
```matlab
N = 1000; % 信号长度
data = round(rand(1,N));
```
2. 将0映射成-1,1不变,得到单极性非归零NRZ信号:
```matlab
s = 2*data-1;
```
3. 将信号变成单极性归零RZ信号:
```matlab
srz = zeros(1,2*N); % 预分配空间
for i=1:N
srz((i-1)*2+1:i*2) = s(i)*[1 0];
end
```
4. 画出波形:
```matlab
t = 0:2*N-1;
plot(t,srz);
axis([0 2*N -2 2]);
```
5. 计算功率谱:
```matlab
fs = 100; % 采样率
[P,f] = periodogram(srz,[],[],fs,'power');
plot(f,P);
```
以上就是MATLAB画出0,1等概的单极性非归零NRZ信号和单极性归零RZ信号的波形和功率谱的具体步骤,希望能对你有所帮助。
阅读全文