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

📄 com_dimo.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 5 页
字号:
add_line([sys,'/',['Differential',13,'PSK demodu']],[455,200;480,200])
add_line([sys,'/',['Differential',13,'PSK demodu']],[455,200;455,170;650,170])
add_line([sys,'/',['Differential',13,'PSK demodu']],[745,175;755,175])
add_line([sys,'/',['Differential',13,'PSK demodu']],[690,175;705,175])
add_line([sys,'/',['Differential',13,'PSK demodu']],[595,210;640,210;650,180])
add_line([sys,'/',['Differential',13,'PSK demodu']],[615,210;605,275])
add_line([sys,'/',['Differential',13,'PSK demodu']],[355,190;400,190])
add_line([sys,'/',['Differential',13,'PSK demodu']],[290,295;295,295;295,195;315,195])
add_line([sys,'/',['Differential',13,'PSK demodu']],[280,185;315,185])
add_line([sys,'/',['Differential',13,'PSK demodu']],[210,265;220,265;220,285;240,285])
add_line([sys,'/',['Differential',13,'PSK demodu']],[135,185;230,185])
add_line([sys,'/',['Differential',13,'PSK demodu']],[155,185;155,235;370,235;370,200;400,200])
add_line([sys,'/',['Differential',13,'PSK demodu']],[155,235;155,295;240,295])
add_line([sys,'/',['Differential',13,'PSK demodu']],[555,275;545,275;555,220])
add_line([sys,'/',['Differential',13,'PSK demodu']],[530,200;555,200])
add_line([sys,'/',['Differential',13,'PSK demodu']],[360,105;410,105])
add_line([sys,'/',['Differential',13,'PSK demodu']],[155,185;155,40;355,40])
add_line([sys,'/',['Differential',13,'PSK demodu']],[155,100;245,100;245,65;260,65])
add_line([sys,'/',['Differential',13,'PSK demodu']],[50,185;65,185])
add_line([sys,'/',['Differential',13,'PSK demodu']],[465,55;535,55])
add_line([sys,'/',['Differential',13,'PSK demodu']],[570,65;580,65;580,140;220,140;230,175])
add_line([sys,'/',['Differential',13,'PSK demodu']],[440,100;460,100])
add_line([sys,'/',['Differential',13,'PSK demodu']],[210,55;260,55])
add_line([sys,'/',['Differential',13,'PSK demodu']],[510,100;515,100;515,70;535,70])
add_line([sys,'/',['Differential',13,'PSK demodu']],[395,270;380,270;380,210;400,210])
add_line([sys,'/',['Differential',13,'PSK demodu']],[310,65;345,65;355,50])
add_line([sys,'/',['Differential',13,'PSK demodu']],[395,40;400,40;410,90])
set_param([sys,'/',['Differential',13,'PSK demodu']],...
               'Mask Display','DPSK\ndemodul',...
              'Mask Type','DPSK Demodulation')
set_param([sys,'/',['Differential',13,'PSK demodu']],...
                'Mask Dialogue','Differential Phase Shift Keying Demodulation:|Carrier frequency (Hz):|Carrier amplitude:|Trigger signal threshold:|Initial phase (rad):')
set_param([sys,'/',['Differential',13,'PSK demodu']],...
              'Mask Translate','Fc=@1*pi*2; Ac=@2;thld=@3;Ph=@4;')
set_param([sys,'/',['Differential',13,'PSK demodu']],...
            'Mask Help','This block demodulates a MPSK modulated signal using coherent method. The first input port is for the received signal, which is MPSK modulated signal. The second input port inputs the clock pulse. The clock rising edge triggers the block to process next input. The initial phase should match those in the modulation. Becase the correlation computation, the output signal has one clock period delay over the original signal.')
set_param([sys,'/',['Differential',13,'PSK demodu']],...
         'Mask Entries','N\/100\/.2\/0\/')


%     Finished composite block ['Differential',13,'PSK demodu'].

set_param([sys,'/',['Differential',13,'PSK demodu']],...
               'orientation',2,...
             'position',[145,304,210,346])


%     Subsystem  ['APK correlation',13,'demodulation1'].

new_system([sys,'/',['APK correlation',13,'demodulation1']])
set_param([sys,'/',['APK correlation',13,'demodulation1']],'Location',[2,46,536,174])

add_block('built-in/Inport',[sys,'/',['APK correlation',13,'demodulation1/in_2']])
set_param([sys,'/',['APK correlation',13,'demodulation1/in_2']],...
             'Port','2',...
          'position',[25,65,45,85])


%     Subsystem  ['APK correlation',13,'demodulation1/Rising edge',13,'detector'].

new_system([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],'Location',[303,485,692,659])

add_block('built-in/Outport',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/out_1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/out_1']],...
         'position',[340,25,360,45])

add_block('built-in/Relational Operator',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Relational',13,'Operator1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Relational',13,'Operator1']],...
             'position',[200,88,230,112])

add_block('built-in/Relational Operator',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Relational',13,'Operator2']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Relational',13,'Operator2']],...
            'Operator','>',...
              'position',[265,23,295,47])

add_block('built-in/Constant',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/one1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/one1']],...
          'Value','thld',...
              'position',[30,135,60,155])

add_block('built-in/Memory',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Memory1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Memory1']],...
              'position',[125,80,165,110])

add_block('built-in/Inport',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/in_1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/in_1']],...
           'position',[10,15,30,35])

add_block('built-in/Relational Operator',[sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Relational',13,'Operator']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector/Relational',13,'Operator']],...
         'position',[135,18,165,42])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[35,25;130,25])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[45,25;45,95;120,95])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[170,95;195,95])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[65,145;100,145;100,35;130,35])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[100,145;180,145;180,105;195,105])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[170,30;260,30])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[235,100;240,100;240,40;260,40])
add_line([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],[300,35;335,35])
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],...
                'Mask Display','Edge\ndetector',...
             'Mask Type','Edge Detection',...
                'Mask Dialogue','Rising edge detection:|Threshold:')
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],...
            'Mask Translate','thld=@1;')
set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],...
            'Mask Help','When the input signal rising edge passed the given shreshold, this block outputs one, otherwise outputs zero.',...
         'Mask Entries','thld\/')


%     Finished composite block ['APK correlation',13,'demodulation1/Rising edge',13,'detector'].

set_param([sys,'/',['APK correlation',13,'demodulation1/Rising edge',13,'detector']],...
                'ForeGround',4,...
              'position',[125,53,185,97])

add_block('built-in/Inport',[sys,'/',['APK correlation',13,'demodulation1/in_1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/in_1']],...
                'position',[85,25,105,45])

add_block('built-in/S-Function',[sys,'/',['APK correlation',13,'demodulation1/S-function']])
set_param([sys,'/',['APK correlation',13,'demodulation1/S-function']],...
         'ForeGround',2,...
              'function name','apskdem2',...
          'parameters','L, Fc, N, P, A',...
               'position',[325,35,400,55])

add_block('built-in/Outport',[sys,'/',['APK correlation',13,'demodulation1/out_1']])
set_param([sys,'/',['APK correlation',13,'demodulation1/out_1']],...
             'position',[430,35,450,55])

add_block('built-in/Mux',[sys,'/',['APK correlation',13,'demodulation1/Mux']])
set_param([sys,'/',['APK correlation',13,'demodulation1/Mux']],...
             'inputs','2',...
                'position',[250,25,285,60])
add_line([sys,'/',['APK correlation',13,'demodulation1']],[50,75;120,75])
add_line([sys,'/',['APK correlation',13,'demodulation1']],[290,45;320,45])
add_line([sys,'/',['APK correlation',13,'demodulation1']],[190,75;210,75;210,50;245,50])
add_line([sys,'/',['APK correlation',13,'demodulation1']],[405,45;425,45])
add_line([sys,'/',['APK correlation',13,'demodulation1']],[110,35;245,35])
set_param([sys,'/',['APK correlation',13,'demodulation1']],...
                'Mask Display','APK\ncorr demo',...
             'Mask Type','APK demodulation')
set_param([sys,'/',['APK correlation',13,'demodulation1']],...
           'Mask Dialogue','ASK/PSK with concentric circles:|Vector of number of symboles on each circle:|Distance to the originall point for each circle:|Phase shift on each circle (rad):|Carrier frequency (Hz):|Trigger signal threshold:')
set_param([sys,'/',['APK correlation',13,'demodulation1']],...
             'Mask Translate','N=@1;A=@2;P=@3;Fc=@4;thld=@5;L=length(N); [num,den]=cheby1(2,.1,Fc*pi/5,''s'');Am=max(A);')
set_param([sys,'/',['APK correlation',13,'demodulation1']],...
             'Mask Help','This block demodulates an ASK/PSK modulated signal in the 1st in-port. The demodulated message are 0,1,..,M-1. The second input port inputs the clock pulse. The clock rising edge triggers the block to process next input. The parameter entry should exactly match the ASK/PSK modulation block.')
set_param([sys,'/',['APK correlation',13,'demodulation1']],...
                'Mask Entries','NIL\/AIL\/PIL\/Fc\/.2\/')


%     Finished composite block ['APK correlation',13,'demodulation1'].

set_param([sys,'/',['APK correlation',13,'demodulation1']],...
           'orientation',2,...
             'position',[250,490,310,530])


%     Subsystem  ['APK amp+phase',13,'demodulation'].

new_system([sys,'/',['APK amp+phase',13,'demodulation']])
set_param([sys,'/',['APK amp+phase',13,'demodulation']],'Location',[73,245,769,433])

add_block('built-in/Inport',[sys,'/',['APK amp+phase',13,'demodulation/in_2']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/in_2']],...
          'Port','2',...
          'position',[220,120,240,140])


%     Subsystem  ['APK amp+phase',13,'demodulation/Rising edge',13,'detector'].

new_system([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],'Location',[303,485,692,659])

add_block('built-in/Relational Operator',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Relational',13,'Operator']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Relational',13,'Operator']],...
          'position',[135,18,165,42])

add_block('built-in/Inport',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/in_1']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/in_1']],...
          'position',[10,15,30,35])

add_block('built-in/Memory',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Memory1']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Memory1']],...
              'position',[125,80,165,110])

add_block('built-in/Constant',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/one1']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/one1']],...
               'Value','thld',...
              'position',[30,135,60,155])

add_block('built-in/Relational Operator',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Relational',13,'Operator2']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Relational',13,'Operator2']],...
           'Operator','>',...
              'position',[265,23,295,47])

add_block('built-in/Relational Operator',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Relational',13,'Operator1']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/Relational',13,'Operator1']],...
           'position',[200,88,230,112])

add_block('built-in/Outport',[sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/out_1']])
set_param([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector/out_1']],...
              'position',[340,25,360,45])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[300,35;335,35])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[235,100;240,100;240,40;260,40])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[170,30;260,30])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[65,145;100,145;100,35;130,35])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[100,145;180,145;180,105;195,105])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[170,95;195,95])
add_line([sys,'/',['APK amp+phase',13,'demodulation/Rising edge',13,'detector']],[35,25;130,25])
add_line([sys,'/',['AP

⌨️ 快捷键说明

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