askook.m

来自「对ASK调制解调进行了仿真,包括程序仿真和模型仿真」· M 代码 · 共 25 行

M
25
字号
function[y,fs,fb,fc]=ask(x,kbase,fs,fb,fc);
%
% Usage:[y,fs,fb,fc]=ask(x,fs,fb,fc);  BBI 2000
if nargin<5;fc=2;     end;
if nargin<4;fb=1;     end;
if nargin<3;fs=32;    end;
if nargin<2;Kbase=1;  end;
if nargin<1;x=[0 0 1 1 1 0 0 1 0 1 1 0 0 0 1 0 ]; end;
T=length(x)/fb;    m=fs/fb;
dt=1/fs;  t=0: dt: T-dt;
xx=pulse (x, m, 2); 
if Kbase==2; xx=bshape(xx); end;
y=(xx>=0).*sin(2*pi*fc*t);   %ASk or OOK
%--------------------------------------------------------------------------
if nargout<1;
    subplot(211); plot(t,y,t,xx*.5,[0 T],[0 0],'b:');
    title('signal');
    n=length(y); yy=fft(y)/n; y=abs(y(1:fix(n/2)))*2;
    I=find(y<1e-04);y(I)=1e-04; y=20*log10(y);
    f1=m/n; f=0:f1:(length(y)-1)*f1;
    subplot(212); plot(f,y,'r');grid on ;
    title('Spectrum'); xlabel('f/fb'); zoom xon;
    set(gcf, 'num','off','name',...
        ['ASK(OOK),' blanks(10) ' BBI 2000']);
end;

⌨️ 快捷键说明

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