⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exam2_rz.m

📁 使用matlab实现rz码的编码,通信原理实验之一
💻 M
字号:
%时间单位 us 频率单位 MHz 码元速率 Mb/s
clear all
close all
echo off
k=input('取样点数=2^k,k=[14]');
if isempty(k),
	k=14;
end
N=2^k;	%采样点数
L=64;	%每码元采样点数
M=N/L;	%码元数
Rb=2;	%码元速率
Ts=1/Rb;	%码元间隔
dt=Ts/L;	%时域取样间隔
df=1/(N*dt);	%频域取样间隔
T=N*dt;	%时域截短时间
Bs=N*df/2;	%频域系统带宽
t=[-T/2+dt/2:dt:T/2];	%时域横坐标
f=[-Bs+df/2:df:Bs];		%频域横坐标  
Rt=input('占空比=0--1,Rt=0.5');
if isempty(Rt),
	Rt=0.5;
end
Ep=zeros(size(f));
for ii=1:20
    a=round(rand(1,M));
    rz=zeros(1,N);
    for tt=1:Rt*L
        rz(tt+[0:M-1]*L)=a;
    end
    RZ=t2f(rz,dt);
    P=RZ.*conj(RZ)/T;
    Ep=(Ep*(ii-1)+P)/ii;
end
figure(1)
set(1,'position',[10,50,300,200])
aa=30+10*log10(Ep+eps);
plot(f,aa,'r')
grid on
axis([-10,+10,-50,50])
xlabel('f(MHz)')
ylabel('Ps(f)(dBm/MHz)')
figure(2)
set(2,'position',[350,50,300,200])
plot(t,rz,'b')
grid on
axis([-5,5,-0.5,1.5])
xlabel('t(us)')
ylabel('s(t)(V)')

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -