📄 tcemqask.m
字号:
'inputs','2',...
'position',[90,46,120,79])
add_block('built-in/S-Function',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/S-function']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/S-function']],...
'function name','sftable2',...
'parameters','xindex, yindex, table',...
'position',[140,52,190,78])
add_block('built-in/Inport',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/x0']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/x0']],...
'position',[20,25,40,45])
add_block('built-in/Outport',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/table out']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/table out']],...
'position',[215,55,235,75])
add_block('built-in/Inport',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/y0']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table/y0']],...
'Port','2',...
'position',[20,80,40,100])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],[125,65;135,65])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],[45,35;65,35;65,55;85,55])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],[195,65;210,65])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],[45,90;65,90;65,70;85,70])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],...
'Mask Display','plot(-10,-10,110,110,[90,50,10],[90,40,30],[90,50,10],[50,26,20],[90,50,10],[22,13,10])',...
'Mask Type','2-D Table Lookup')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],...
'Mask Dialogue','Two Dimensional Table Lookup\nThe first input corresponds to X Index and the second input corresponds to the Y Index|X Index|Y Index|Table')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],...
'Mask Translate','xindex=@1; yindex=@2; table=@3; sftab2chk(xindex,yindex,table);')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],...
'Mask Help','This block returns a linearly interpolated intersection from the table using the X index (which corresponds to the rows of the table) and the Y index (which corresponds to the columns of the table). Extrapolation is used.')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],...
'Mask Entries','x\/y\/tab\/')
% Finished composite block ['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table'].
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/2-D Table']],...
'position',[515,68,545,92])
add_block('built-in/Sum',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/Sum5']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/Sum5']],...
'ForeGround',2,...
'position',[470,153,490,182])
add_block('built-in/Inport',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/in_2']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/in_2']],...
'Port','2',...
'position',[60,155,80,175])
add_block('built-in/Zero-Order Hold',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/Zero-Order',13,'Hold1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/Zero-Order',13,'Hold1']],...
'Sample time','td',...
'position',[135,149,170,181])
add_block('built-in/Inport',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/in_1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/in_1']],...
'position',[60,30,80,50])
add_block('built-in/Zero-Order Hold',[sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/Zero-Order',13,'Hold']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap/Zero-Order',13,'Hold']],...
'Sample time','td',...
'position',[135,24,170,56])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[175,40;275,40])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[175,165;285,165])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[85,165;130,165])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[495,75;510,75])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[355,125;560,125;560,95;575,95])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[450,125;450,160;465,160])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[450,125;450,80;465,80])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[495,170;500,170;510,85])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[455,175;465,175])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[450,50;450,65;465,65])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[605,90;625,90])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[550,80;575,80])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[665,90;680,90])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[360,50;380,50])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[305,50;320,50])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[250,100;255,100;255,55;275,55])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[255,225;260,225;260,180;285,180])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[315,175;320,175])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[360,175;380,175])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],[85,40;130,40])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],...
'Mask Display','QASK\nS-demap',...
'Mask Type','QASK S-demap')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],...
'Mask Dialogue','Reverse the QASK map. Input in-phase\nand quadrature components from the\ntwo inputs. Output demapped signal.|QASK M-ary number (outputs are in range [0, M-1]):|Output symbol interval and offset (sec):')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],...
'Mask Translate','N=@1;td=@2;Ac=1;sftx=[1 -1 3 -3 5 -5 7 -7 9 -9 11 -11 13 -13 15 -15];sftx=sftx(1:2*ceil(sqrt(N)/2));sfty=sftx;if N==8,sfty=sfty(1:2);end;sftx=sftx/max(sftx)*Ac;sfty=sfty/max(sfty)*Ac;tab=qaskdeco(length(sftx),length(sfty),''fetch'')+1;x=[1:length(sftx)];y=[1:length(sfty)];')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],...
'Mask Help','This block demaps a QASK mapped signal using square constellation. You can place this block after a QAM demodulation block. This block assumes the maximum amplitude of the input signals is 1. The output symbols are integers in the range [0, M-1]. The input symbol interval can be a two-element vector with the second element being offset. The default value offset is 0.')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],...
'Mask Entries','M\/td\/')
% Finished composite block ['S-map QASK',13,'demod baseband/QASK',13,'square-demap'].
set_param([sys,'/',['S-map QASK',13,'demod baseband/QASK',13,'square-demap']],...
'hide name',0,...
'position',[205,28,285,72])
% Subsystem ['S-map QASK',13,'demod baseband/QADM',13,'baseband'].
new_system([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],'Location',[283,122,827,462])
add_block('built-in/Outport',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/out_1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/out_1']],...
'position',[480,70,500,90])
add_block('built-in/Note',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Ref: Hambley: An Intro to Comm. Systems. pp72']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Ref: Hambley: An Intro to Comm. Systems. pp72']],...
'position',[285,280,290,285])
add_block('built-in/Filter',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Filter']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Filter']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[390,61,445,99])
add_block('built-in/Product',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product']],...
'position',[260,43,290,67])
add_block('built-in/Sum',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Sum']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Sum']],...
'inputs','+-',...
'position',[335,70,355,90])
add_block('built-in/Product',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product3']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product3']],...
'position',[270,193,300,217])
add_block('built-in/Product',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product2']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product2']],...
'position',[270,238,300,262])
add_block('built-in/Constant',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Constant']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Constant']],...
'Value','x1',...
'position',[155,40,175,60])
add_block('built-in/Demux',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Demux']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Demux']],...
'outputs','2',...
'position',[120,105,160,140])
add_block('built-in/Product',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Product1']],...
'position',[260,123,290,147])
add_block('built-in/Filter',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Filter1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Filter1']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[395,211,450,249])
add_block('built-in/Outport',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/out_2']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/out_2']],...
'Port','2',...
'position',[485,220,505,240])
add_block('built-in/Sum',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Sum1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Sum1']],...
'position',[340,220,360,240])
add_block('built-in/Constant',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Constant1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/Constant1']],...
'Value','x2',...
'position',[160,245,180,265])
add_block('built-in/Inport',[sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/in_1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband/in_1']],...
'position',[55,115,75,135])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[455,230;480,230])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[365,230;390,230])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[450,80;475,80])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[360,80;385,80])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[80,125;115,125])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[305,250;315,250;315,235;335,235])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[305,205;315,205;315,225;335,225])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[295,135;305,135;305,85;330,85])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[295,55;305,55;305,75;330,75])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[180,50;255,50])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[215,50;215,200;265,200])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[165,130;255,130])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[180,130;180,210;265,210])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[185,255;200,255;200,140;255,140])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[200,255;265,255])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[165,115;230,115;230,60;255,60])
add_line([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],[230,115;230,245;265,245])
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],...
'Mask Display','plot(0,0,100,100,x,y,u,v);QADM',...
'Mask Type','QM DSB-SC ADM CE')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],...
'Mask Dialogue','Demodulate the complex envelope of a\nQAM modulated signal into in-phase and\nquadrature components into 1st and 2nd\nout ports.|Lowpass filter numerator:|Lowpass filter denominator:|Initial phase (rad):|Sample time (sec):')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],...
'Mask Translate','num=@1;den=@2;Ph=@3;ts=@4;x1=cos(-Ph);x2=sin(-Ph);[x,y]=moduicon(2);[u,v]=cmplxicn(0,50,get_param(gcb,''orientation''));')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],...
'Mask Help','This block demodulates the quadratic multiplexed double-sideband suppressed-carrier amplitude modulation modulated signal using the QAM method. The filter to be specified is a lowpass filter that passes the signal message and eliminates the carrier signal.')
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],...
'Mask Entries','num\/den\/Ph\/ts\/')
% Finished composite block ['S-map QASK',13,'demod baseband/QADM',13,'baseband'].
set_param([sys,'/',['S-map QASK',13,'demod baseband/QADM',13,'baseband']],...
'ForeGround',4,...
'hide name',0,...
'position',[90,28,170,72])
add_block('built-in/Inport',[sys,'/',['S-map QASK',13,'demod baseband/in_1']])
set_param([sys,'/',['S-map QASK',13,'demod baseband/in_1']],...
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -