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

📄 com_dimo.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 5 页
字号:
set_param([sys,'/',['MPSK modu/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 ['MPSK modu/Rising edge',13,'detector'].

set_param([sys,'/',['MPSK modu/Rising edge',13,'detector']],...
          'position',[75,173,135,217])

add_block('built-in/Product',[sys,'/','MPSK modu/Product'])
set_param([sys,'/','MPSK modu/Product'],...
              'position',[360,36,385,69])

add_block('built-in/Constant',[sys,'/','MPSK modu/Multiple factor'])
set_param([sys,'/','MPSK modu/Multiple factor'],...
              'Value','Sft',...
               'position',[290,48,310,72])
add_line([sys,'/','MPSK modu'],[395,190;420,190;420,95;435,95])
add_line([sys,'/','MPSK modu'],[225,45;250,45;250,100;230,100])
add_line([sys,'/','MPSK modu'],[250,45;355,45])
add_line([sys,'/','MPSK modu'],[140,195;150,195;150,45;185,45])
add_line([sys,'/','MPSK modu'],[150,140;355,140])
add_line([sys,'/','MPSK modu'],[150,195;250,195;250,170;270,170])
add_line([sys,'/','MPSK modu'],[395,140;415,140;415,85;435,85])
add_line([sys,'/','MPSK modu'],[320,170;330,170;330,150;355,150])
add_line([sys,'/','MPSK modu'],[180,100;165,100;165,55;185,55])
add_line([sys,'/','MPSK modu'],[110,35;185,35])
add_line([sys,'/','MPSK modu'],[55,195;70,195])
add_line([sys,'/','MPSK modu'],[560,85;575,85])
add_line([sys,'/','MPSK modu'],[230,160;270,160])
add_line([sys,'/','MPSK modu'],[315,60;355,60])
add_line([sys,'/','MPSK modu'],[390,55;415,55;415,75;435,75])
add_line([sys,'/','MPSK modu'],[465,85;475,85])
set_param([sys,'/','MPSK modu'],...
            'Mask Display','MPSK',...
               'Mask Type','MPSK')
set_param([sys,'/','MPSK modu'],...
          'Mask Dialogue','M-ary Phase Shift Keying Modulation:|M-ary number:|Carrier frequency (Hz):|Output amplitude:|Trigger signal threshold:|Initial phase (rad):')
set_param([sys,'/','MPSK modu'],...
         'Mask Translate','pi2=2*pi;Sft=pi2/@1; Fc=@2*pi2; Ac=@3; thld=@4;Ph=@5;')
set_param([sys,'/','MPSK modu'],...
            'Mask Help','This block modulates an M-ary digital signal onto a given carrier frequency. The first input port is for the original digital signal, which is coded as 0,1,..,M-1. The second input port inputs the clock pulse. The clock rising edge triggers the block to process next input. For best solution, the carrier frequency should be integer times the clock frequency. The initial phase will affect every input process.')
set_param([sys,'/','MPSK modu'],...
          'Mask Entries','16\/100\/1\/.2\/0\/')


%     Finished composite block 'MPSK modu'.

set_param([sys,'/','MPSK modu'],...
             'position',[35,189,95,231])


%     Subsystem  ['Differential',13,'PSK demodu'].

new_system([sys,'/',['Differential',13,'PSK demodu']])
set_param([sys,'/',['Differential',13,'PSK demodu']],'Location',[50,105,913,506])

add_block('built-in/Outport',[sys,'/',['Differential',13,'PSK demodu/out_1']])
set_param([sys,'/',['Differential',13,'PSK demodu/out_1']],...
                'position',[760,165,780,185])

add_block('built-in/Logical Operator',[sys,'/',['Differential',13,'PSK demodu/Logical',13,'Operator1']])
set_param([sys,'/',['Differential',13,'PSK demodu/Logical',13,'Operator1']],...
            'Operator','NOT',...
            'Number of Input Ports','1',...
         'position',[710,163,740,187])

add_block('built-in/Logical Operator',[sys,'/',['Differential',13,'PSK demodu/Logical',13,'Operator']])
set_param([sys,'/',['Differential',13,'PSK demodu/Logical',13,'Operator']],...
              'Operator','XOR',...
            'position',[655,163,685,187])

add_block('built-in/Note',[sys,'/',['Differential',13,'PSK demodu/delayed',13,'output']])
set_param([sys,'/',['Differential',13,'PSK demodu/delayed',13,'output']],...
              'position',[610,175,615,180])

add_block('built-in/Memory',[sys,'/',['Differential',13,'PSK demodu/Memory3']])
set_param([sys,'/',['Differential',13,'PSK demodu/Memory3']],...
            'orientation',2,...
             'position',[560,260,600,290])

add_block('built-in/Switch',[sys,'/',['Differential',13,'PSK demodu/Switch2']])
set_param([sys,'/',['Differential',13,'PSK demodu/Switch2']],...
            'Threshold','eps',...
           'position',[560,194,590,226])

add_block('built-in/Memory',[sys,'/',['Differential',13,'PSK demodu/Memory2']])
set_param([sys,'/',['Differential',13,'PSK demodu/Memory2']],...
            'position',[485,185,525,215])

add_block('built-in/Sum',[sys,'/',['Differential',13,'PSK demodu/Sum']])
set_param([sys,'/',['Differential',13,'PSK demodu/Sum']],...
               'position',[415,83,435,112])

add_block('built-in/Reset Integrator',[sys,'/',['Differential',13,'PSK demodu/Reset',13,'integrator1']])
set_param([sys,'/',['Differential',13,'PSK demodu/Reset',13,'integrator1']],...
             'position',[265,49,305,81])

add_block('built-in/Product',[sys,'/',['Differential',13,'PSK demodu/Product']])
set_param([sys,'/',['Differential',13,'PSK demodu/Product']],...
             'position',[540,46,565,79])

add_block('built-in/Inport',[sys,'/',['Differential',13,'PSK demodu/in_1']])
set_param([sys,'/',['Differential',13,'PSK demodu/in_1']],...
            'position',[440,45,460,65])

add_block('built-in/Switch',[sys,'/',['Differential',13,'PSK demodu/Switch1']])
set_param([sys,'/',['Differential',13,'PSK demodu/Switch1']],...
              'Threshold','eps',...
           'position',[360,24,390,56])

add_block('built-in/Constant',[sys,'/',['Differential',13,'PSK demodu/Initial phase']])
set_param([sys,'/',['Differential',13,'PSK demodu/Initial phase']],...
                'Value','Ph',...
                'position',[335,93,355,117])

add_block('built-in/Fcn',[sys,'/',['Differential',13,'PSK demodu/sin']])
set_param([sys,'/',['Differential',13,'PSK demodu/sin']],...
                'Expr','sin(u)',...
             'position',[465,87,505,113])

add_block('built-in/Constant',[sys,'/',['Differential',13,'PSK demodu/Frequency']])
set_param([sys,'/',['Differential',13,'PSK demodu/Frequency']],...
               'Value','Fc',...
                'position',[180,43,205,67])

add_block('built-in/Constant',[sys,'/',['Differential',13,'PSK demodu/Const']])
set_param([sys,'/',['Differential',13,'PSK demodu/Const']],...
                'Value','Ac/4',...
              'position',[175,254,205,276])

add_block('built-in/Reset Integrator',[sys,'/',['Differential',13,'PSK demodu/Reset',13,'integrator2']])
set_param([sys,'/',['Differential',13,'PSK demodu/Reset',13,'integrator2']],...
            'position',[245,279,285,311])

add_block('built-in/Relational Operator',[sys,'/',['Differential',13,'PSK demodu/Relational',13,'Operator']])
set_param([sys,'/',['Differential',13,'PSK demodu/Relational',13,'Operator']],...
             'position',[320,178,350,202])

add_block('built-in/Switch',[sys,'/',['Differential',13,'PSK demodu/Switch']])
set_param([sys,'/',['Differential',13,'PSK demodu/Switch']],...
              'Threshold','eps',...
           'position',[405,184,435,216])

add_block('built-in/Memory',[sys,'/',['Differential',13,'PSK demodu/Memory1']])
set_param([sys,'/',['Differential',13,'PSK demodu/Memory1']],...
            'orientation',2,...
             'position',[400,255,440,285])


%     Subsystem  ['Differential',13,'PSK demodu/Rising edge',13,'detector'].

new_system([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']])
set_param([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],'Location',[303,485,692,659])

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

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

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

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

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

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

add_block('built-in/Relational Operator',[sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector/Relational',13,'Operator']])
set_param([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector/Relational',13,'Operator']],...
             'position',[135,18,165,42])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[35,25;130,25])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[45,25;45,95;120,95])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[170,95;195,95])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[65,145;100,145;100,35;130,35])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[100,145;180,145;180,105;195,105])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[170,30;260,30])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[235,100;240,100;240,40;260,40])
add_line([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],[300,35;335,35])
set_param([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],...
              'Mask Display','Edge\ndetector',...
             'Mask Type','Edge Detection',...
                'Mask Dialogue','Rising edge detection:|Threshold:',...
         'Mask Translate','thld=@1;')
set_param([sys,'/',['Differential',13,'PSK demodu/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 ['Differential',13,'PSK demodu/Rising edge',13,'detector'].

set_param([sys,'/',['Differential',13,'PSK demodu/Rising edge',13,'detector']],...
            'position',[70,163,130,207])

add_block('built-in/Inport',[sys,'/',['Differential',13,'PSK demodu/in_2']])
set_param([sys,'/',['Differential',13,'PSK demodu/in_2']],...
           'Port','2',...
          'position',[25,175,45,195])

add_block('built-in/Reset Integrator',[sys,'/',['Differential',13,'PSK demodu/Reset',13,'integrator']])
set_param([sys,'/',['Differential',13,'PSK demodu/Reset',13,'integrator']],...
                'position',[235,169,275,201])
add_line([sys,'/',['Differential',13,'PSK demodu']],[440,200;455,200;445,270])

⌨️ 快捷键说明

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