📄 digserro.m
字号:
% Digital Phase Shifter Serrodyning
% ---------------------------------
clf;clf;clear;
% Set Input Parameters
b=4; % Quantizing Bits
N=128; % Sample Points
% Define time vector 0 to tmax
tmax=1;
t=tmax*(0:N-1)/N;
% Sample frequency fs
fs=N/tmax;
% Define step ramp z which runs
% from 0 to tmax with amplitude 1
B=2^b;
y=B*t/tmax;
z=floor(y)/B;
% Define Phase Modulated Signal
j=sqrt(-1);
fo=0;
x=exp(j*2*pi*(fo*t+z));
% Find x for M steps
M=64;A=[];
for m=1:M;
A=[A x];end;
x=A;
% Extend for t vector
N=N*M;
t=tmax*(0:N-1)/N;
% Spectrum for x(t)
X=fft(x);
Px=X.*conj(X);
Px=fftshift(Px);
% Select central frequency axis
Px(3*N/4+1:N)=[];
Px(1:N/4)=[];
fax=fs*(-N/4:N/4-1)/N;
% Normalize amplitude
Px=Px/max(Px);
Pxdbm=10*log10(Px+1e-6);
plot(fax,Pxdbm);grid;
xlabel('Frequency - Hz');ylabel('Amplitude - dbm');
title(['Digital Phase Shifter Serrodyning' ...
' ( Bits =',num2str(b),')']);
axis([-40 40 -60 0]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -