用MATLAB 绘制双极性非归零信号的时域波形和功率谱

clear all
close all
clc
%% 生成单个码元
Ts = 1; % 码元周期
N_sample = 128; % 单个码元抽样点数
dt = Ts / N_sample; % 抽样时间间隔
N = 100; % 码元数
t = 0 : dt : (N * N_sample - 1) * dt; % 序列传输时间
gt1 = ones(1, N_sample); % NRZ
%% 生成随机序列
RAN = round(rand(1, N)); % 随机0 1序列
se1 = [];
for i = 1 : N % 生成序列
   if RAN(i)==1
       se1 = [se1 gt1];
   else
       se1 = [se1 -1*gt1];
   end
end
%% 绘制出结果
subplot(2, 1, 1);plot(t, se1);grid on;axis([0 20 -1.5 1.5]);title('DBNRZ');
%% 功率谱密度计算
fft_se1 = fftshift(fft(se1)); % 求序列的频谱
PE1 = 10 * log10(abs(fft_se1) .^ 2 / (N * Ts)); % 公式法求概率谱密度
PEL1 = (-length(fft_se1) / 2 : length(fft_se1) / 2 - 1) / 10; % 求区间长度
%% 绘制出结果
subplot(2, 1, 2);plot(PEL1, PE1); grid on; axis([-50 50 -50 50]); title('density-DBNRZ');

运行结果:
在这里插入图片描述

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

花里梦雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值