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

📄 tstfmpm.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 4 页
字号:
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator/in_1']],...
                'position',[20,25,40,45])

add_block('built-in/Gain',[sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator/Sensitivity']])
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator/Sensitivity']],...
              'Gain','Kc',...
         'position',[65,21,105,49])

add_block('built-in/Outport',[sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator/out_1']])
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator/out_1']],...
              'position',[410,30,430,50])
add_line([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],[400,40;405,40])
add_line([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],[175,40;190,40])
add_line([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],[115,85;125,85;125,45;145,45])
add_line([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],[110,35;145,35])
add_line([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],[45,35;60,35])
add_line([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],[255,40;265,40])
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],...
           'Mask Display','VCO',...
                'Mask Type','VCO')
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],...
            'Mask Dialogue','Voltage-Controlled Oscilator:|Amplitude constant:|Carier frequency (Hz):|Sensitivity constant:|Initial phase (rad):')
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],...
                'Mask Translate','Ac=@1;Fc=@2;Kc=@3;Ph=@4;pi2=2*pi;')
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],...
         'Mask Help','The VCO block cause the frequency of the sinusoidal carrier to depend on the input signal voltage, resulting in frequency of the output change depending on the amplitude of the input signal.')
set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],...
         'Mask Entries','Ac\/Fc\/1\/Ph\/')


%     Finished composite block ['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator'].

set_param([sys,'/',['PLL Phase',13,'demodulation1/Voltage-controlled',13,'oscilator']],...
           'orientation',2,...
             'position',[175,102,230,138])

add_block('built-in/Outport',[sys,'/',['PLL Phase',13,'demodulation1/out_1']])
set_param([sys,'/',['PLL Phase',13,'demodulation1/out_1']],...
               'position',[465,35,485,55])

add_block('built-in/Gain',[sys,'/',['PLL Phase',13,'demodulation1/Gain']])
set_param([sys,'/',['PLL Phase',13,'demodulation1/Gain']],...
              'Gain','G',...
          'position',[405,32,430,58])

add_block('built-in/Transfer Fcn',[sys,'/',['PLL Phase',13,'demodulation1/Lowpass',13,'filter']])
set_param([sys,'/',['PLL Phase',13,'demodulation1/Lowpass',13,'filter']],...
                'Numerator','Fn',...
            'Denominator','Fd',...
          'position',[210,24,260,66])

add_block('built-in/Transfer Fcn',[sys,'/',['PLL Phase',13,'demodulation1/Transfer Fcn1']])
set_param([sys,'/',['PLL Phase',13,'demodulation1/Transfer Fcn1']],...
            'Numerator','2*pi',...
          'Denominator','[1 0]',...
               'position',[325,27,360,63])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[435,45;460,45])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[170,120;95,120;95,50;135,50])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[170,45;205,45])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[70,40;135,40])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[365,45;400,45])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[265,45;320,45])
add_line([sys,'/',['PLL Phase',13,'demodulation1']],[290,45;290,120;235,120])
set_param([sys,'/',['PLL Phase',13,'demodulation1']],...
           'Mask Display','PLL\nPDM',...
           'Mask Type','PLL PDM')
set_param([sys,'/',['PLL Phase',13,'demodulation1']],...
          'Mask Dialogue','Phase-Locked Loop Frequency Demodulation:|Filter numerator:|Filter Denominator:|VCO frequency:|VCO Phase:|VCO Amplitude:|Gain at the output:')
set_param([sys,'/',['PLL Phase',13,'demodulation1']],...
         'Mask Translate','Fn=@1;Fd=@2;Fc=@3;Ph=@4;Ac=@5;G=@6;')
set_param([sys,'/',['PLL Phase',13,'demodulation1']],...
         'Mask Help','Phase-Locked Loop Phase Demodulation is to recover the original signal modulated by a carrier frequency. The phase detector used in this block is a multiplier.')
set_param([sys,'/',['PLL Phase',13,'demodulation1']],...
          'Mask Entries','[3.0002,  0, 40002]\/[1, 67.46, 2270.9, 40002]\/100/2/pi\/pi/2\/1\/2\/')


%     Finished composite block ['PLL Phase',13,'demodulation1'].

set_param([sys,'/',['PLL Phase',13,'demodulation1']],...
                'ForeGround',6,...
              'position',[255,230,325,270])


%     Subsystem  ['Phase',13,'Modulation'].

new_system([sys,'/',['Phase',13,'Modulation']])
set_param([sys,'/',['Phase',13,'Modulation']],'Location',[352,181,811,348])

add_block('built-in/Clock',[sys,'/',['Phase',13,'Modulation/Clock']])
set_param([sys,'/',['Phase',13,'Modulation/Clock']],...
          'position',[25,70,45,90])

add_block('built-in/Fcn',[sys,'/',['Phase',13,'Modulation/module']])
set_param([sys,'/',['Phase',13,'Modulation/module']],...
           'Expr','pi2*rem(u[1]*Fc,1)',...
         'position',[90,65,200,95])

add_block('built-in/Constant',[sys,'/',['Phase',13,'Modulation/Initial value']])
set_param([sys,'/',['Phase',13,'Modulation/Initial value']],...
               'Value','Ph',...
                'position',[165,120,185,140])

add_block('built-in/Sum',[sys,'/',['Phase',13,'Modulation/Sum1']])
set_param([sys,'/',['Phase',13,'Modulation/Sum1']],...
           'inputs','+++',...
              'position',[240,62,260,98])

add_block('built-in/Fcn',[sys,'/',['Phase',13,'Modulation/Fcn']])
set_param([sys,'/',['Phase',13,'Modulation/Fcn']],...
               'Expr','Ac*sin(u[1])',...
               'position',[285,65,360,95])

add_block('built-in/Outport',[sys,'/',['Phase',13,'Modulation/out_1']])
set_param([sys,'/',['Phase',13,'Modulation/out_1']],...
               'position',[390,70,410,90])

add_block('built-in/Gain',[sys,'/',['Phase',13,'Modulation/Sensitivity']])
set_param([sys,'/',['Phase',13,'Modulation/Sensitivity']],...
              'Gain','Kc',...
         'position',[115,11,155,39])

add_block('built-in/Inport',[sys,'/',['Phase',13,'Modulation/in_1']])
set_param([sys,'/',['Phase',13,'Modulation/in_1']],...
          'position',[25,15,45,35])
add_line([sys,'/',['Phase',13,'Modulation']],[205,80;235,80])
add_line([sys,'/',['Phase',13,'Modulation']],[190,130;215,130;215,90;235,90])
add_line([sys,'/',['Phase',13,'Modulation']],[365,80;385,80])
add_line([sys,'/',['Phase',13,'Modulation']],[50,80;85,80])
add_line([sys,'/',['Phase',13,'Modulation']],[265,80;280,80])
add_line([sys,'/',['Phase',13,'Modulation']],[160,25;215,25;215,70;235,70])
add_line([sys,'/',['Phase',13,'Modulation']],[50,25;110,25])
set_param([sys,'/',['Phase',13,'Modulation']],...
                'Mask Display','PM',...
         'Mask Type','PM',...
            'Mask Dialogue','Phase modulation:|Amplitude constant:|Carier frequency (Hz):|Sensitivity constant:|Initial phase (rad):')
set_param([sys,'/',['Phase',13,'Modulation']],...
             'Mask Translate','Ac=@1;Fc=@2;Kc=@3;Ph=@4;pi2=2*pi;')
set_param([sys,'/',['Phase',13,'Modulation']],...
          'Mask Help','The PM block cause the phase of the sinusoidal carrier to depend on the input signal voltage, resulting in frequency of the output change depending on the amplitude of the input signal.')
set_param([sys,'/',['Phase',13,'Modulation']],...
               'Mask Entries','1\/100/2/pi\/1\/0\/')


%     Finished composite block ['Phase',13,'Modulation'].

set_param([sys,'/',['Phase',13,'Modulation']],...
         'position',[145,232,190,268])


%     Subsystem  'Subsystem'.

new_system([sys,'/','Subsystem'])
set_param([sys,'/','Subsystem'],'Location',[162,381,780,562])

add_block('built-in/Note',[sys,'/','Subsystem/This block diagram tests frequency modulator//demodulators and phase modulator//demodulator.'])
set_param([sys,'/','Subsystem/This block diagram tests frequency modulator//demodulators and phase modulator//demodulator.'],...
           'position',[290,15,295,20])

add_block('built-in/Note',[sys,'/','Subsystem/The yellow signal is the inputed signal to be modulated.'])
set_param([sys,'/','Subsystem/The yellow signal is the inputed signal to be modulated.'],...
                'ForeGround',5,...
              'position',[175,40,180,45])

add_block('built-in/Note',[sys,'/','Subsystem/The magenta signal is the PLL phase demodulator output'])
set_param([sys,'/','Subsystem/The magenta signal is the PLL phase demodulator output'],...
            'ForeGround',6,...
              'position',[180,115,185,120])

add_block('built-in/Note',[sys,'/','Subsystem/The demodulated signal matches the input signal with some time delay. The delay is caused by filters.'])
set_param([sys,'/','Subsystem/The demodulated signal matches the input signal with some time delay. The delay is caused by filters.'],...
            'position',[310,140,315,145])

add_block('built-in/Note',[sys,'/','Subsystem/The red signal is the discriminant frequency demodulator output'])
set_param([sys,'/','Subsystem/The red signal is the discriminant frequency demodulator output'],...
                'ForeGround',2,...
              'position',[195,90,200,95])

add_block('built-in/Note',[sys,'/','Subsystem/The green signal is the PLL frequency demodulator output'])
set_param([sys,'/','Subsystem/The green signal is the PLL frequency demodulator output'],...
                'ForeGround',3,...
              'position',[180,65,185,70])
set_param([sys,'/','Subsystem'],...
          'Mask Display','?')


%     Finished composite block 'Subsystem'.

set_param([sys,'/','Subsystem'],...
               'hide name',0,...
               'Drop Shadow',4,...
             'position',[455,235,485,271])
add_line(sys,[195,85;255,85])
add_line(sys,[80,85;140,85])
add_line(sys,[335,85;380,85])
add_line(sys,[425,90;450,90])
add_line(sys,[100,85;100,45;360,45;360,75;380,75])
add_line(sys,[220,85;220,165;255,165])
add_line(sys,[340,165;355,165;355,95;380,95])
add_line(sys,[330,250;365,250;365,105;380,105])
add_line(sys,[195,250;250,250])
add_line(sys,[100,85;100,250;140,250])

drawnow

% Return any arguments.
if (nargin | nargout)
    % Must use feval here to access system in memory
        if (nargin > 3)
         if (flag == 0)
                  eval(['[ret,x0,str,ts,xts]=',sys,'(t,x,u,flag);'])
              else
                    eval(['ret =', sys,'(t,x,u,flag);'])
            end
     else
            [ret,x0,str,ts,xts] = feval(sys);
       end
else
 drawnow % Flash up the model and execute load callback
end

⌨️ 快捷键说明

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