📄 com_moce.m
字号:
'Mask Dialogue','Frequency modulation with complex envelop output:|Amplitude constant:|Modulation sensitivity constant:|Initial phase (rad):|Sample time:')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/FM CE//VCO']],...
'Mask Translate','Ac=@1;Kc=@2*2*pi;Ph=@3;pi2=2*pi;ts=@4;')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/FM CE//VCO']],...
'Mask Help','The FM 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,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/FM CE//VCO']],...
'Mask Entries','1\/1\/Ph\/ts\/')
% Finished composite block ['MASK demod',13,'baseband/DSB-ADM',13,'baseband/FM CE//VCO'].
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/FM CE//VCO']],...
'orientation',2,...
'position',[215,100,295,140])
add_block('built-in/Inport',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/in_1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/in_1']],...
'orientation',2,...
'position',[185,90,205,110])
add_block('built-in/Filter',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Filter1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Filter1']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[250,176,305,214])
% Subsystem ['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply'].
new_system([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],'Location',[297,318,980,694])
add_block('built-in/Gain',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Conjugate']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Conjugate']],...
'Gain','-1',...
'position',[190,210,230,240])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I2']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I2']],...
'position',[170,225,175,230])
add_block('built-in/Outport',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Real']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Real']],...
'position',[495,110,515,130])
add_block('built-in/Outport',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Imag']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Imag']],...
'Port','2',...
'position',[485,280,505,300])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I1']],...
'position',[198,108,203,113])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R1']],...
'position',[195,65,200,70])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R2']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R2']],...
'position',[190,185,195,190])
add_block('built-in/Product',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product']],...
'position',[305,83,335,107])
add_block('built-in/Product',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product1']],...
'position',[305,143,335,167])
add_block('built-in/Sum',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum']],...
'inputs','+-',...
'position',[380,110,400,130])
add_block('built-in/Product',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product3']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product3']],...
'position',[305,253,335,277])
add_block('built-in/Product',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product2']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product2']],...
'position',[305,298,335,322])
add_block('built-in/Sum',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum1']],...
'position',[380,280,400,300])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R_out']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R_out']],...
'position',[450,95,455,100])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I_out']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I_out']],...
'position',[450,286,455,291])
add_block('built-in/Note',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R = Real',13,'I = Imaginary']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R = Real',13,'I = Imaginary']],...
'position',[55,0,60,5])
add_block('built-in/Demux',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
'outputs','2',...
'Mask Display','Complex to\nReal/Imag',...
'Mask Type','Complex to Real/Imag')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
'Mask Dialogue','Real and imaginary components of complex vector.')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
'Mask Help','The Complex to Real/Imag block decomposes a complex vector into its real and imaginary components using a Demux block. The real part is directed to output 1, and the imaginary to output 2.')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
'position',[85,79,160,121])
add_block('built-in/Inport',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 1']],...
'position',[35,90,55,110])
add_block('built-in/Demux',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
'outputs','2',...
'Mask Display','Complex to\nReal/Imag',...
'Mask Type','Complex to Real/Imag')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
'Mask Dialogue','Real and imaginary components of complex vector.')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
'Mask Help','The Complex to Real/Imag block decomposes a complex vector into its real and imaginary components using a Demux block. The real part is directed to output 1, and the imaginary to output 2.')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
'position',[80,194,155,236])
add_block('built-in/Inport',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 2']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 2']],...
'Port','2',...
'position',[25,205,45,225])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[235,225;260,225;260,160;300,160])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[260,225;260,270;300,270])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[160,225;185,225])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[405,120;490,120])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[405,290;480,290])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[60,100;80,100])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[50,215;75,215])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,95;350,95;350,115;375,115])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,155;350,155;350,125;375,125])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[165,90;300,90])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[243,90;243,260;300,260])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[160,205;275,205;275,100;300,100])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[275,205;275,305;300,305])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[165,110;250,110;250,150;300,150])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[255,150;255,315;300,315])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,265;350,265;350,285;375,285])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,310;350,310;350,295;375,295])
% Finished composite block ['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply'].
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],...
'orientation',2,...
'position',[40,90,115,130])
add_block('built-in/Filter',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Filter']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Filter']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[260,26,315,64])
add_block('built-in/Product',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Product1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/Product1']],...
'orientation',2,...
'position',[390,110,425,130])
add_block('built-in/Outport',[sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/out_1']])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband/out_1']],...
'position',[485,35,505,55])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[210,120;120,120])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[305,120;300,120])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[385,120;375,120])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[310,195;445,195;445,125;430,125])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[35,120;15,120;15,195;245,195])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[35,100;20,100;20,45;255,45])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[180,100;120,100])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[320,45;480,45])
add_line([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],[445,45;445,115;430,115])
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],...
'Mask Display','plot(0,0,100,100,x,y,u,v);DSB ADM',...
'Mask Type','DSB-SC ADM CE')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],...
'Mask Dialogue','Demodulate the complex envelope of a\nDSB-SC AM modulated signal.|Lowpass filter numerator:|Lowpass filter denominator:|Initial phase (rad):|Sample time (sec):')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],...
'Mask Translate','num=@1;den=@2;Ph=@3;pi2=pi*2;ts=@4;[x,y]=moduicon(2);[u,v]=cmplxicn(0,50,get_param(gcb,''orientation''));')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],...
'Mask Help','This block demodulates the complex envelope of a DSB-SC-AM modulated signal using Costas phase-locked loop method. This block requires you to specify a lowpass filter that eliminates the carrier frequency and keeps the message signal. This block takes a complex signal.')
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],...
'Mask Entries','num\/den\/Ph\/ts\/')
% Finished composite block ['MASK demod',13,'baseband/DSB-ADM',13,'baseband'].
set_param([sys,'/',['MASK demod',13,'baseband/DSB-ADM',13,'baseband']],...
'ForeGround',4,...
'position',[90,23,170,67])
add_line([sys,'/',['MASK demod',13,'baseband']],[40,45;85,45])
add_line([sys,'/',['MASK demod',13,'baseband']],[300,45;325,45])
add_line([sys,'/',['MASK demod',13,'baseband']],[175,45;210,45])
set_param([sys,'/',['MASK demod',13,'baseband']],...
'Mask Display','plot(0,0,100,100,x,y,u,v);MASK',...
'Mask Type','Baseband MASK demodulation')
set_param([sys,'/',['MASK demod',13,'baseband']],...
'Mask Dialogue','Demodulate the complex envelope of a\nMASK modulated signal.|M-ary number (output integer in range [0, M-1]):|Output symbol interval and offset (sec):|Initial phase (rad):|Lowpass filter numerator:|Lowpass filter denominator:|Filter sample time (sec):')
set_param([sys,'/',['MASK demod',13,'baseband']],...
'Mask Translate','N=@1;td=@2;Ph=@3;num=@4;den=@5;ts=@6;[x,y]=moduicon(6);[u,v]=cmplxicn(0,50,get_param(gcb,''orientation''));')
set_param([sys,'/',['MASK demod',13,'baseband']],...
'Mask Help','This block demodulates the complex envelope of a MASK modulated signal. The output signal are digits in the range [0, M-1]. When the output symbol interval is a two-element vector, the second element is the offset (default 0). A lowpass filter is required in the demodulation. You can set both numerator and denominator to one for not using the lowpass filter.')
set_param([sys,'/',['MASK demod',13,'baseband']],...
'Mask Entries','16\/[.2, .2-.01]\/0\/1\/1\/.01\/')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -