📄 tddps2cd.m
字号:
set_param([sys,'/',['Circle-map',13,'QASK mod1/QASK',13,'circle-map']],...
'Mask Display','QASK\nC-map',...
'Mask Type','QASK C-map')
set_param([sys,'/',['Circle-map',13,'QASK mod1/QASK',13,'circle-map']],...
'Mask Dialogue','QASK mapping with circle constellation. The constellation is defined in NIC, RIC and PIC.|Number of symbols in each circle NIC:|Radii in each circle RIC:|Phase shift in each circle PIC (rad):|Symbol interval and offset (sec):')
set_param([sys,'/',['Circle-map',13,'QASK mod1/QASK',13,'circle-map']],...
'Mask Translate','N=@1;A=@2;P=@3;td=@4;y1=apkconst(N,A,P);y1=[y1;y1];y1=y1(:);y2=imag(y1);y1=real(y1);x=[-sum(N) 1:sum(N)-1;1:sum(N)-1 10*sum(N)]-.5;x=x(:);')
set_param([sys,'/',['Circle-map',13,'QASK mod1/QASK',13,'circle-map']],...
'Mask Help','This block maps a digital signal onto in-phase and quadratic components, which are outputs in the first and second output port respectively. The circle constellation is defined in NIC, RIC, and PIC. The input symbol interval can be a two-element vector with the second element being offset. The default value offset is 0. Use the MODMAP function to see the constellation.')
set_param([sys,'/',['Circle-map',13,'QASK mod1/QASK',13,'circle-map']],...
'Mask Entries','NIR\/AIR\/PIR\/td\/')
% Finished composite block ['Circle-map',13,'QASK mod1/QASK',13,'circle-map'].
set_param([sys,'/',['Circle-map',13,'QASK mod1/QASK',13,'circle-map']],...
'hide name',0,...
'position',[50,53,130,97])
add_block('built-in/Inport',[sys,'/',['Circle-map',13,'QASK mod1/in_1']])
set_param([sys,'/',['Circle-map',13,'QASK mod1/in_1']],...
'position',[5,65,20,85])
add_block('built-in/Outport',[sys,'/',['Circle-map',13,'QASK mod1/out_1']])
set_param([sys,'/',['Circle-map',13,'QASK mod1/out_1']],...
'position',[270,65,290,85])
add_line([sys,'/',['Circle-map',13,'QASK mod1']],[135,65;155,65])
add_line([sys,'/',['Circle-map',13,'QASK mod1']],[25,75;45,75])
add_line([sys,'/',['Circle-map',13,'QASK mod1']],[245,75;265,75])
add_line([sys,'/',['Circle-map',13,'QASK mod1']],[135,85;155,85])
set_param([sys,'/',['Circle-map',13,'QASK mod1']],...
'Mask Display','plot(0,0,100,100,x,y);C-QASK',...
'Mask Type','Passband C-QASK modulation')
set_param([sys,'/',['Circle-map',13,'QASK mod1']],...
'Mask Dialogue','Modulate the input digital signal using quadrature amplitude shift keying method with circle constellation.|Number of symbols on each circle NIC:|Radii for each circle RIC:|Phase shift on each circle PIC (rad):|Symbol interval (sec):|Carrier Frequency (Hz):|Sample time (sec):')
set_param([sys,'/',['Circle-map',13,'QASK mod1']],...
'Mask Translate','NIR=@1;AIR=@2;PIR=@3;td=@4;Fc=@5;ts=@6;Ph=0;[x,y]=moduicon(5);')
set_param([sys,'/',['Circle-map',13,'QASK mod1']],...
'Mask Help','This block modulates input digit using QASK modulation method with circle constellation. The vector lengths of NIC, RIC, and PIC should be the same. Use function DMOD to view the constellation of the signal distribution. The default initial phase is zero. To specify the phase information, ungroup this block to assign parameters.')
set_param([sys,'/',['Circle-map',13,'QASK mod1']],...
'Mask Entries','NIR\/AIR\/PIR\/td\/Fc\/ts\/')
% Finished composite block ['Circle-map',13,'QASK mod1'].
set_param([sys,'/',['Circle-map',13,'QASK mod1']],...
'hide name',0,...
'position',[170,43,250,87])
% Subsystem ['Circle-map',13,'QASK demod1'].
new_system([sys,'/',['Circle-map',13,'QASK demod1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1']],'Location',[514,549,825,674])
% Subsystem ['Circle-map',13,'QASK demod1/QASK',13,'circle-demap'].
new_system([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],'Location',[96,182,645,417])
add_block('built-in/Zero-Order Hold',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Zero-Order',13,'Hold']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Zero-Order',13,'Hold']],...
'ForeGround',2,...
'Sample time','td',...
'position',[120,29,155,61])
add_block('built-in/Inport',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/real']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/real']],...
'position',[45,35,65,55])
add_block('built-in/Inport',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/imag']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/imag']],...
'Port','2',...
'position',[45,120,65,140])
add_block('built-in/Zero-Order Hold',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Zero-Order',13,'Hold1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Zero-Order',13,'Hold1']],...
'ForeGround',4,...
'Sample time','td',...
'position',[120,114,155,146])
add_block('built-in/Sum',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Sum1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Sum1']],...
'ForeGround',2,...
'inputs','+-',...
'position',[230,38,250,67])
add_block('built-in/Sum',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Sum6']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Sum6']],...
'ForeGround',4,...
'inputs','+-',...
'position',[230,123,250,152])
add_block('built-in/Product',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Product']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Product']],...
'position',[300,45,325,65])
add_block('built-in/Product',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Product1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Product1']],...
'position',[300,130,325,150])
add_block('built-in/Sum',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Sum2']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Sum2']],...
'position',[370,78,390,107])
add_block('built-in/S-Function',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Minimum1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/Minimum1']],...
'function name','arymimai',...
'parameters','''min''',...
'position',[415,85,475,105])
add_block('built-in/Outport',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/out_1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/out_1']],...
'position',[495,85,515,105])
add_block('built-in/Constant',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/real_pt']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/real_pt']],...
'BackGround',3,...
'Value','y1',...
'position',[170,84,195,106])
add_block('built-in/Constant',[sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/imag_pt']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap/imag_pt']],...
'BackGround',5,...
'Value','y2',...
'position',[165,169,190,191])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[70,45;115,45])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[70,130;115,130])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[200,95;205,95;205,60;225,60])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[160,45;225,45])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[160,130;225,130])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[195,180;205,180;205,145;225,145])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[255,55;270,55;270,50;295,50])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[270,55;270,60;295,60])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[255,140;270,140;270,135;295,135])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[270,140;270,145;295,145])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[330,55;340,55;340,85;365,85])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[330,140;340,140;340,100;365,100])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[395,95;410,95])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],[480,95;490,95])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],...
'Mask Display','QASK\nC-demap',...
'Mask Type','QASK C-demap')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],...
'Mask Dialogue','Reverse the QASK map. Input in-phase\nand quadrature components from the\ntwo inputs. Output demapped signal.|Number of symbols on each circle NIC::|Radii for each circle RIC:|Phase shift on each circle PIC (rad):|Symbol interval and offset (sec):')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],...
'Mask Translate','N=@1;A=@2;P=@3;td=@4;y1=apkconst(N,A,P);y2=imag(y1);y1=real(y1);')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],...
'Mask Help','This block demaps a QASK mapped signal using circle constellation. You can place this block after a QAM demodulation block. The circle constellation is defined in NIC, RIC, and PIC. The symbol interval can be a two elements vector with the first element being offset. The default offset is zero. ')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],...
'Mask Entries','NIR\/AIR\/PIR\/td\/')
% Finished composite block ['Circle-map',13,'QASK demod1/QASK',13,'circle-demap'].
set_param([sys,'/',['Circle-map',13,'QASK demod1/QASK',13,'circle-demap']],...
'hide name',0,...
'position',[175,53,255,97])
% Subsystem ['Circle-map',13,'QASK demod1/QADM',13,'passband3'].
new_system([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],'Location',[194,478,738,741])
add_block('built-in/Clock',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Clock']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Clock']],...
'position',[60,110,80,130])
add_block('built-in/Gain',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Gain']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Gain']],...
'Gain','Fc',...
'position',[110,101,160,139])
add_block('built-in/Filter',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Filter1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Filter1']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[390,166,445,204])
add_block('built-in/Filter',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Filter']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Filter']],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[390,61,445,99])
add_block('built-in/Gain',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Gain1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Gain1']],...
'Gain','2',...
'position',[270,118,295,142])
add_block('built-in/Inport',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/in_1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/in_1']],...
'position',[230,120,250,140])
add_block('built-in/Note',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Ref: Hambley: An Intro to Comm. Systems. pp72']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Ref: Hambley: An Intro to Comm. Systems. pp72']],...
'position',[285,280,290,285])
add_block('built-in/Fcn',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Fcn']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Fcn']],...
'Expr','cos(u[1]+Ph)',...
'position',[205,55,300,85])
add_block('built-in/Fcn',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Fcn1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Fcn1']],...
'Expr','sin(u[1]+Ph)',...
'position',[200,175,300,205])
add_block('built-in/Product',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Product']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Product']],...
'position',[330,62,355,93])
add_block('built-in/Product',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Product1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/Product1']],...
'position',[330,167,355,198])
add_block('built-in/Outport',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/out_2']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/out_2']],...
'Port','2',...
'position',[480,175,500,195])
add_block('built-in/Outport',[sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/out_1']])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3/out_1']],...
'position',[480,70,500,90])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[300,130;305,130;305,175;325,175])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[300,130;305,130;305,85;325,85])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[255,130;265,130])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[165,120;185,120;185,70;200,70])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[185,120;195,190])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[305,70;325,70])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[305,190;325,190])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[360,80;385,80])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[450,80;475,80])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[360,185;385,185])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[450,185;475,185])
add_line([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],[85,120;105,120])
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],...
'Mask Display','plot(0,0,100,100,x,y);QADM',...
'Mask Type','Passband DSB-SC QADM')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],...
'Mask Dialogue','Demodulate a DSB-SC QAM modulated\nsignal into in-phase and quadrature\ncomponents.|Carrier frequency (Hz):|Lowpass filter numerator:|Lowpass filter denominator:|Initial phase (rad):|Sample time (sec):')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],...
'Mask Translate','Fc=@1*2*pi;num=@2;den=@3;Ph=@4;ts=@5;[x,y]=moduicon(2);')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],...
'Mask Help','This block demodulates the QM-DSB-SC-AM modulated signal. The first output port outputs the in-phase component and the second port outputs the quadrature component. The demodulation uses a discrete-time lowpass filter that passes the signal message and eliminates the carrier signal. ')
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],...
'Mask Entries','Fc\/num\/den\/Ph\/ts\/')
% Finished composite block ['Circle-map',13,'QASK demod1/QADM',13,'passband3'].
set_param([sys,'/',['Circle-map',13,'QASK demod1/QADM',13,'passband3']],...
'ForeGround',4,...
'hide name',0,...
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -