📄 testssba.m
字号:
'Mask Display','plot(0,0,100,100,x,y,x1,y1)',...
'Mask Type','Complex to Real/Imag',...
'Mask Dialogue','Real and imaginary components of complex vector.')
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude/Split']],...
'Mask Translate','o=get_param(gcb,''orientation''); [x,y]=cmplxicn(0,50,o); [x1,y1]=joinicon(o+2); ')
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude/Split']],...
'Mask Help','The 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,'/',['USB-AM',13,'spectrum/Magnitude/Split']],...
'position',[160,78,190,102])
add_block('built-in/Sum',[sys,'/',['USB-AM',13,'spectrum/Magnitude/R^2+I^2']])
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude/R^2+I^2']],...
'position',[275,64,300,111])
add_block('built-in/Outport',[sys,'/',['USB-AM',13,'spectrum/Magnitude/Magnitude']])
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude/Magnitude']],...
'position',[410,80,430,100])
add_block('built-in/Inport',[sys,'/',['USB-AM',13,'spectrum/Magnitude/in_1']])
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude/in_1']],...
'position',[15,80,35,100])
add_block('built-in/Note',[sys,'/',['USB-AM',13,'spectrum/Magnitude/R']])
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude/R']],...
'position',[245,55,250,60])
add_line([sys,'/',['USB-AM',13,'spectrum/Magnitude']],[40,90;80,90])
add_line([sys,'/',['USB-AM',13,'spectrum/Magnitude']],[380,90;405,90])
add_line([sys,'/',['USB-AM',13,'spectrum/Magnitude']],[120,90;155,90])
add_line([sys,'/',['USB-AM',13,'spectrum/Magnitude']],[195,85;225,85;225,75;270,75])
add_line([sys,'/',['USB-AM',13,'spectrum/Magnitude']],[195,95;225,95;225,100;270,100])
add_line([sys,'/',['USB-AM',13,'spectrum/Magnitude']],[305,90;340,90])
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude']],...
'Mask Display','plot(0,0,100,100,[30,30],[10,90],[90,12],[30,30],[73,80,30],[51,70,30],[64,80],[70,70],[76,83,64],[51,73,73],[78,33,30,77],[65,30,34,70],x,y)')
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude']],...
'Mask Type','Magnitude',...
'Mask Dialogue','Magnitude of complex vector.',...
'Mask Translate','[x,y]=cmplxicn(0,50,get_param(gcb,''orientation'')); ')
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude']],...
'Mask Help','Computes the magnitude of the complex input vector:\ny=sqrt(u*conj(u))\nThe output is a real vector.')
% Finished composite block ['USB-AM',13,'spectrum/Magnitude'].
set_param([sys,'/',['USB-AM',13,'spectrum/Magnitude']],...
'position',[330,28,360,52])
add_line([sys,'/',['USB-AM',13,'spectrum']],[200,40;230,40])
add_line([sys,'/',['USB-AM',13,'spectrum']],[280,40;325,40])
add_line([sys,'/',['USB-AM',13,'spectrum']],[30,40;70,40])
add_line([sys,'/',['USB-AM',13,'spectrum']],[120,40;150,40])
add_line([sys,'/',['USB-AM',13,'spectrum']],[365,40;405,40])
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'Mask Display','plot(0,0,100,100,[8 8 92 92 8],[92 40 40 92 92],[16 16 84],[88 48 48],[24 24],[76 48],[32 32 32],[65 48 48],[40 40],[79 48],[48 48],[60 48],[56 56],[58 48],[64 64],[64 48],[72 72 72],[56 49 48],[80 80 80 80],[49 49 48 48],[38 32 32 36 32 32],[33 33 27 27 27 20],[51 44 44 48 44 44 44],[33 33 27 27 27 27 20],[64 60 56 60 60],[33 33 33 33 20])')
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'Mask Type','FFT Scope')
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'Mask Dialogue','FFT scope for real input.|Buffer size:|Buffer overlap:|Sample time:|FFT length (must be a power of two):|Units (0 - Hz, 1 - Rads/sec):|Figure position (in pixels):')
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'Mask Translate','bufsize=@1;olap=@2;ts=@3;fftlength=@4;rads=@5;figpos=@6;')
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'Mask Help','Successively accumulates Buffer size (real, scalar) signal values at a sampling rate of Sample time, overlapping successive buffers by Buffer overlap samples. Takes the FFT of length "FFT length" of each buffer and displays its magnitude in a figure.')
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'Mask Entries','128\/0\/ts\/256\/0\/get(0,''DefaultFigurePosition'')\/')
% Finished composite block ['USB-AM',13,'spectrum'].
set_param([sys,'/',['USB-AM',13,'spectrum']],...
'hide name',0,...
'position',[395,63,430,107])
% Subsystem ['SSB-AM',13,'baseband'].
new_system([sys,'/',['SSB-AM',13,'baseband']])
set_param([sys,'/',['SSB-AM',13,'baseband']],'Location',[65,60,522,206])
add_block('built-in/Gain',[sys,'/',['SSB-AM',13,'baseband/Gain']])
set_param([sys,'/',['SSB-AM',13,'baseband/Gain']],...
'Gain','k',...
'position',[190,75,210,95])
add_block('built-in/Filter',[sys,'/',['SSB-AM',13,'baseband/Filter']])
set_param([sys,'/',['SSB-AM',13,'baseband/Filter']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[90,66,145,104])
add_block('built-in/Outport',[sys,'/',['SSB-AM',13,'baseband/out_1']])
set_param([sys,'/',['SSB-AM',13,'baseband/out_1']],...
'position',[395,30,415,50])
% Subsystem ['SSB-AM',13,'baseband/QAM CE'].
new_system([sys,'/',['SSB-AM',13,'baseband/QAM CE']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],'Location',[125,397,758,690])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/R1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/R1']],...
'position',[190,15,195,20])
add_block('built-in/Product',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Product']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Product']],...
'position',[300,33,330,57])
add_block('built-in/Product',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Product1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Product1']],...
'position',[300,93,330,117])
add_block('built-in/Sum',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Sum']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Sum']],...
'inputs','+-',...
'position',[375,60,395,80])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/R_out']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/R_out']],...
'position',[445,45,450,50])
add_block('built-in/Mux',[sys,'/',['SSB-AM',13,'baseband/QAM CE/RI2C']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/RI2C']],...
'inputs','2',...
'Mask Display','Real/Imag\nto Complex',...
'Mask Type','Real/Imag to Complex',...
'Mask Dialogue','Construct complex vector from real and imaginary vectors.')
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/RI2C']],...
'Mask Help','The Real/Imag to Complex block creates a complex output from the two inputs. It uses a Mux block to append the complex part (input 2) to the real part (input 1).')
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/RI2C']],...
'position',[470,119,545,161])
add_block('built-in/Inport',[sys,'/',['SSB-AM',13,'baseband/QAM CE/in_1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/in_1']],...
'position',[95,30,115,50])
add_block('built-in/Outport',[sys,'/',['SSB-AM',13,'baseband/QAM CE/out_1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/out_1']],...
'position',[585,130,605,150])
add_block('built-in/Constant',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Constant']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Constant']],...
'Value','x1',...
'position',[80,145,100,165])
add_block('built-in/Constant',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Constant1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Constant1']],...
'Value','x2',...
'position',[130,165,150,185])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/I1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/I1']],...
'position',[193,43,198,48])
add_block('built-in/Inport',[sys,'/',['SSB-AM',13,'baseband/QAM CE/in_2']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/in_2']],...
'Port','2',...
'position',[135,55,155,75])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/R2']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/R2']],...
'position',[125,135,130,140])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/I2']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/I2']],...
'position',[190,155,195,160])
add_block('built-in/Product',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Product3']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Product3']],...
'position',[310,183,340,207])
add_block('built-in/Product',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Product2']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Product2']],...
'position',[310,228,340,252])
add_block('built-in/Sum',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Sum1']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Sum1']],...
'position',[385,210,405,230])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/I_out']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/I_out']],...
'position',[445,206,450,211])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/QAM CE/Ref: Hambley: An Intro to Comm. Systems. pp72']])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE/Ref: Hambley: An Intro to Comm. Systems. pp72']],...
'position',[260,370,265,375])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[550,140;580,140])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[345,240;355,240;355,225;380,225])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[345,195;355,195;355,215;380,215])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[160,65;245,65;245,100;295,100])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[250,100;250,245;305,245])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[155,175;280,175;280,110;295,110])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[280,175;280,200;305,200])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[105,155;270,155;270,50;295,50])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[270,155;270,235;305,235])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[120,40;295,40])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[238,40;238,190;305,190])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[335,105;345,105;345,75;370,75])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[335,45;345,45;345,65;370,65])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[400,70;425,70;425,130;465,130])
add_line([sys,'/',['SSB-AM',13,'baseband/QAM CE']],[410,220;425,220;425,150;465,150])
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],...
'Mask Display','QM DSB\nAM',...
'Mask Type','Quadrature Multiplexed DSB-SC AM')
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],...
'Mask Dialogue','Quadrature multiplexed double-sideband suppressed-carrier amplitude modulation:|Initial phase (rad):|Sample time (sec):')
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],...
'Mask Translate','Ph=@1;ts=@2;x1=cos(Ph);x2=sin(Ph);')
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],...
'Mask Help','The Quadratic Multiplexed Double-Sideband-Supressed-Carrier AM block causes the amplitude of the sinusoidal carrier to depend on the input message signal, resulting in amplitude modulation. There are two input signal being modulated at the same time by using two orthogonal sinusoidal carriers.')
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],...
'Mask Entries','Ph\/ts\/')
% Finished composite block ['SSB-AM',13,'baseband/QAM CE'].
set_param([sys,'/',['SSB-AM',13,'baseband/QAM CE']],...
'position',[280,20,360,60])
add_block('built-in/Note',[sys,'/',['SSB-AM',13,'baseband/Ref: Hambley: An Intro to Comm. Systems. pp82']])
set_param([sys,'/',['SSB-AM',13,'baseband/Ref: Hambley: An Intro to Comm. Systems. pp82']],...
'position',[355,290,360,295])
add_block('built-in/Inport',[sys,'/',['SSB-AM',13,'baseband/in_1']])
set_param([sys,'/',['SSB-AM',13,'baseband/in_1']],...
'position',[30,20,50,40])
add_line([sys,'/',['SSB-AM',13,'baseband']],[215,85;240,85;240,50;275,50])
add_line([sys,'/',['SSB-AM',13,'baseband']],[150,85;185,85])
add_line([sys,'/',['SSB-AM',13,'baseband']],[55,30;65,30;65,85;85,85])
add_line([sys,'/',['SSB-AM',13,'baseband']],[65,30;275,30])
add_line([sys,'/',['SSB-AM',13,'baseband']],[365,40;390,40])
set_param([sys,'/',['SSB-AM',13,'baseband']],...
'Mask Display','plot(0,0,100,100,x,y,u,v);SSB AM',...
'Mask Type','SSB-AM CE using Hilbert transform filter.')
set_param([sys,'/',['SSB-AM',13,'baseband']],...
'Mask Dialogue','Output complex envelope of a SSB AM\nmodulated signal.|Initial Phase (rad):|Bandwidth of the input signal (Hz):|Time delay for Hilbert transform filter (sec):|Sample time (sec):|"upper" sideband or "lower" sideband:')
set_param([sys,'/',['SSB-AM',13,'baseband']],...
'Mask Translate','Ph=@1;ban=@2;dly=@3;ts=@4;sd=@5;k=-1;if sd(1)==''l'',k=1;end;if ban>1/ts, ban=1/ts-ts;end;[num,den]=hilbiir(ts,dly,ban);pi2=2*pi;pih=pi/2;[x,y]=moduicon(1);[u,v]=cmplxicn(1,50,get_param(gcb,''orientation''));')
set_param([sys,'/',['SSB-AM',13,'baseband']],...
'Mask Help','This block outputs the complex envelope of a SSB AM modulated signal. This block uses the Hilbert transfer filter. Because the Hilbert transform filter is a non-causal filter, you must use a positive time delay in the implementation. The input signal bandwidth is needed in designing the Hilbert transform filter. You can specify the modulation to be an USB or LSB modulation.')
set_param([sys,'/',['SSB-AM',13,'baseband']],...
'Mask Entries','pi/4\/1/ts/10\/ts*10\/ts\/''upper''\/')
% Finished composite block ['SSB-AM',13,'baseband'].
set_param([sys,'/',['SSB-AM',13,'baseband']],...
'ForeGround',2,...
'hide name',0,...
'position',[105,193,185,237])
% Subsystem ['SSB-ADM',13,'baseband'].
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -