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

📄 tsteyesc.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 3 页
字号:
add_line([sys,'/',['QAM',13,'baseband']],[120,40;295,40])
add_line([sys,'/',['QAM',13,'baseband']],[238,40;238,190;305,190])
add_line([sys,'/',['QAM',13,'baseband']],[335,105;345,105;345,75;370,75])
add_line([sys,'/',['QAM',13,'baseband']],[335,45;345,45;345,65;370,65])
add_line([sys,'/',['QAM',13,'baseband']],[400,70;425,70;425,130;465,130])
add_line([sys,'/',['QAM',13,'baseband']],[410,220;425,220;425,150;465,150])
set_param([sys,'/',['QAM',13,'baseband']],...
		'Mask Display','plot(0,0,100,100,x,y,u,v);QAM',...
		'Mask Type','QM DSB-SC AM CE')
set_param([sys,'/',['QAM',13,'baseband']],...
		'Mask Dialogue','Modulate the in-phase and quadrature\ncomponent signal from the 1st and 2nd\ninput ports, baseband simulation.|Initial phase (rad):')
set_param([sys,'/',['QAM',13,'baseband']],...
		'Mask Translate','Ph=@1;x1=cos(Ph);x2=sin(Ph);[x,y]=moduicon(1);[u,v]=cmplxicn(1,50,get_param(gcb,''orientation''));')
set_param([sys,'/',['QAM',13,'baseband']],...
		'Mask Help','This block outputs the complex envelope of the quadratic multiplexed double-sideband suppressed-carrier amplitude modulated signal. The 1st and 2nd input ports input the in-phase and quadrature components. The output is a complex signal.')
set_param([sys,'/',['QAM',13,'baseband']],...
		'Mask Entries','0\/')


%     Finished composite block ['QAM',13,'baseband'].

set_param([sys,'/',['QAM',13,'baseband']],...
		'hide name',0,...
		'position',[225,58,305,102])


%     Subsystem  ['QASK',13,'square-map'].

new_system([sys,'/',['QASK',13,'square-map']])
set_param([sys,'/',['QASK',13,'square-map']],'Location',[214,372,642,541])

add_block('built-in/Look Up Table',[sys,'/',['QASK',13,'square-map/c-y axis']])
set_param([sys,'/',['QASK',13,'square-map/c-y axis']],...
		'Input_Values','z',...
		'Output_Values','y',...
		'position',[245,90,280,120])

add_block('built-in/Outport',[sys,'/',['QASK',13,'square-map/out_2']])
set_param([sys,'/',['QASK',13,'square-map/out_2']],...
		'Port','2',...
		'position',[325,95,345,115])

add_block('built-in/Look Up Table',[sys,'/',['QASK',13,'square-map/s-x axis']])
set_param([sys,'/',['QASK',13,'square-map/s-x axis']],...
		'Input_Values','z',...
		'Output_Values','x',...
		'position',[245,25,280,55])

add_block('built-in/Outport',[sys,'/',['QASK',13,'square-map/out_1']])
set_param([sys,'/',['QASK',13,'square-map/out_1']],...
		'position',[325,30,345,50])

add_block('built-in/Zero-Order Hold',[sys,'/',['QASK',13,'square-map/Zero-Order',13,'Hold']])
set_param([sys,'/',['QASK',13,'square-map/Zero-Order',13,'Hold']],...
		'Sample time','td',...
		'position',[110,24,145,56])

add_block('built-in/Inport',[sys,'/',['QASK',13,'square-map/in_1']])
set_param([sys,'/',['QASK',13,'square-map/in_1']],...
		'position',[45,30,65,50])
add_line([sys,'/',['QASK',13,'square-map']],[70,40;105,40])
add_line([sys,'/',['QASK',13,'square-map']],[150,40;240,40])
add_line([sys,'/',['QASK',13,'square-map']],[185,40;185,105;240,105])
add_line([sys,'/',['QASK',13,'square-map']],[285,105;320,105])
add_line([sys,'/',['QASK',13,'square-map']],[285,40;320,40])
set_param([sys,'/',['QASK',13,'square-map']],...
		'Mask Display','QASK\nS-map',...
		'Mask Type','QASK S-map')
set_param([sys,'/',['QASK',13,'square-map']],...
		'Mask Dialogue','Use square constellation to map the\ninput digital signal into in-phase and\nquadrature components. M must be\nM=2^K with integer K.|M-ary number (input integers in range [0, M-1]):|Input symbol interval and offset (sec):')
set_param([sys,'/',['QASK',13,'square-map']],...
		'Mask Translate','N=@1;Ac=1;td=@2;z=[[1:N];[1:N]];z=z(:);[x,y]=qaskenco(z-1,N);z=z-1.5;z=[z(2:2*N);N-.5];x=x/max(x);y=y/max(y);')
set_param([sys,'/',['QASK',13,'square-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 M-ary number must be M=2^K with integer K. The input symbol interval can be a two-element vector with the second element being offset. The default value offset is 0. The maximum amplitudes for the outputs are 1.')
set_param([sys,'/',['QASK',13,'square-map']],...
		'Mask Entries','M\/td\/')


%     Finished composite block ['QASK',13,'square-map'].

set_param([sys,'/',['QASK',13,'square-map']],...
		'hide name',0,...
		'position',[120,58,200,102])


%     Subsystem  ['QADM',13,'baseband'].

new_system([sys,'/',['QADM',13,'baseband']])
set_param([sys,'/',['QADM',13,'baseband']],'Location',[283,122,827,462])

add_block('built-in/Inport',[sys,'/',['QADM',13,'baseband/in_1']])
set_param([sys,'/',['QADM',13,'baseband/in_1']],...
		'position',[55,115,75,135])

add_block('built-in/Constant',[sys,'/',['QADM',13,'baseband/Constant1']])
set_param([sys,'/',['QADM',13,'baseband/Constant1']],...
		'Value','x2',...
		'position',[160,245,180,265])

add_block('built-in/Sum',[sys,'/',['QADM',13,'baseband/Sum1']])
set_param([sys,'/',['QADM',13,'baseband/Sum1']],...
		'position',[340,220,360,240])

add_block('built-in/Outport',[sys,'/',['QADM',13,'baseband/out_2']])
set_param([sys,'/',['QADM',13,'baseband/out_2']],...
		'Port','2',...
		'position',[485,220,505,240])

add_block('built-in/Filter',[sys,'/',['QADM',13,'baseband/Filter1']])
set_param([sys,'/',['QADM',13,'baseband/Filter1']],...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...
		'position',[395,211,450,249])

add_block('built-in/Product',[sys,'/',['QADM',13,'baseband/Product1']])
set_param([sys,'/',['QADM',13,'baseband/Product1']],...
		'position',[260,123,290,147])

add_block('built-in/Demux',[sys,'/',['QADM',13,'baseband/Demux']])
set_param([sys,'/',['QADM',13,'baseband/Demux']],...
		'outputs','2',...
		'position',[120,105,160,140])

add_block('built-in/Constant',[sys,'/',['QADM',13,'baseband/Constant']])
set_param([sys,'/',['QADM',13,'baseband/Constant']],...
		'Value','x1',...
		'position',[155,40,175,60])

add_block('built-in/Product',[sys,'/',['QADM',13,'baseband/Product2']])
set_param([sys,'/',['QADM',13,'baseband/Product2']],...
		'position',[270,238,300,262])

add_block('built-in/Product',[sys,'/',['QADM',13,'baseband/Product3']])
set_param([sys,'/',['QADM',13,'baseband/Product3']],...
		'position',[270,193,300,217])

add_block('built-in/Sum',[sys,'/',['QADM',13,'baseband/Sum']])
set_param([sys,'/',['QADM',13,'baseband/Sum']],...
		'inputs','+-',...
		'position',[335,70,355,90])

add_block('built-in/Product',[sys,'/',['QADM',13,'baseband/Product']])
set_param([sys,'/',['QADM',13,'baseband/Product']],...
		'position',[260,43,290,67])

add_block('built-in/Filter',[sys,'/',['QADM',13,'baseband/Filter']])
set_param([sys,'/',['QADM',13,'baseband/Filter']],...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...
		'position',[390,61,445,99])

add_block('built-in/Note',[sys,'/',['QADM',13,'baseband/Ref: Hambley: An Intro to Comm. Systems. pp72']])
set_param([sys,'/',['QADM',13,'baseband/Ref: Hambley: An Intro to Comm. Systems. pp72']],...
		'position',[285,280,290,285])

add_block('built-in/Outport',[sys,'/',['QADM',13,'baseband/out_1']])
set_param([sys,'/',['QADM',13,'baseband/out_1']],...
		'position',[480,70,500,90])
add_line([sys,'/',['QADM',13,'baseband']],[165,115;230,115;230,60;255,60])
add_line([sys,'/',['QADM',13,'baseband']],[230,115;230,245;265,245])
add_line([sys,'/',['QADM',13,'baseband']],[185,255;200,255;200,140;255,140])
add_line([sys,'/',['QADM',13,'baseband']],[200,255;265,255])
add_line([sys,'/',['QADM',13,'baseband']],[165,130;255,130])
add_line([sys,'/',['QADM',13,'baseband']],[180,130;180,210;265,210])
add_line([sys,'/',['QADM',13,'baseband']],[180,50;255,50])
add_line([sys,'/',['QADM',13,'baseband']],[215,50;215,200;265,200])
add_line([sys,'/',['QADM',13,'baseband']],[295,55;305,55;305,75;330,75])
add_line([sys,'/',['QADM',13,'baseband']],[295,135;305,135;305,85;330,85])
add_line([sys,'/',['QADM',13,'baseband']],[305,205;315,205;315,225;335,225])
add_line([sys,'/',['QADM',13,'baseband']],[305,250;315,250;315,235;335,235])
add_line([sys,'/',['QADM',13,'baseband']],[80,125;115,125])
add_line([sys,'/',['QADM',13,'baseband']],[360,80;385,80])
add_line([sys,'/',['QADM',13,'baseband']],[450,80;475,80])
add_line([sys,'/',['QADM',13,'baseband']],[365,230;390,230])
add_line([sys,'/',['QADM',13,'baseband']],[455,230;480,230])
set_param([sys,'/',['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,'/',['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,'/',['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,'/',['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,'/',['QADM',13,'baseband']],...
		'Mask Entries','num\/den\/0\/ts\/')


%     Finished composite block ['QADM',13,'baseband'].

set_param([sys,'/',['QADM',13,'baseband']],...
		'hide name',0,...
		'position',[425,58,505,102])


%     Subsystem  ['QASK',13,'square-demap'].

new_system([sys,'/',['QASK',13,'square-demap']])
set_param([sys,'/',['QASK',13,'square-demap']],'Location',[57,374,831,674])

add_block('built-in/Zero-Order Hold',[sys,'/',['QASK',13,'square-demap/Zero-Order',13,'Hold']])
set_param([sys,'/',['QASK',13,'square-demap/Zero-Order',13,'Hold']],...
		'Sample time','td',...
		'position',[135,24,170,56])

add_block('built-in/Inport',[sys,'/',['QASK',13,'square-demap/in_1']])
set_param([sys,'/',['QASK',13,'square-demap/in_1']],...
		'position',[60,30,80,50])

add_block('built-in/Zero-Order Hold',[sys,'/',['QASK',13,'square-demap/Zero-Order',13,'Hold1']])
set_param([sys,'/',['QASK',13,'square-demap/Zero-Order',13,'Hold1']],...
		'Sample time','td',...
		'position',[135,149,170,181])

add_block('built-in/Inport',[sys,'/',['QASK',13,'square-demap/in_2']])
set_param([sys,'/',['QASK',13,'square-demap/in_2']],...
		'Port','2',...
		'position',[60,155,80,175])

add_block('built-in/Sum',[sys,'/',['QASK',13,'square-demap/Sum5']])
set_param([sys,'/',['QASK',13,'square-demap/Sum5']],...
		'ForeGround',2,...
		'position',[470,153,490,182])


%     Subsystem  ['QASK',13,'square-demap/2-D Table'].

new_system([sys,'/',['QASK',13,'square-demap/2-D Table']])
set_param([sys,'/',['QASK',13,'square-demap/2-D Table']],'Location',[436,148,718,302])

add_block('built-in/Inport',[sys,'/',['QASK',13,'square-demap/2-D Table/y0']])
set_param([sys,'/',['QASK',13,'square-demap/2-D Table/y0']],...
		'Port','2',...
		'position',[20,80,40,100])

add_block('built-in/Outport',[sys,'/',['QASK',13,'square-demap/2-D Table/table out']])
set_param([sys,'/',['QASK',13,'square-demap/2-D Table/table out']],...
		'position',[215,55,235,75])

add_block('built-in/Inport',[sys,'/',['QASK',13,'square-demap/2-D Table/x0']])
set_param([sys,'/',['QASK',13,'square-demap/2-D Table/x0']],...
		'position',[20,25,40,45])

add_block('built-in/S-Function',[sys,'/',['QASK',13,'square-demap/2-D Table/S-function']])
set_param([sys,'/',['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/Mux',[sys,'/',['QASK',13,'square-demap/2-D Table/Mux']])
set_param([sys,'/',['QASK',13,'square-demap/2-D Table/Mux']],...
		'inputs','2',...
		'position',[90,46,120,79])
add_line([sys,'/',['QASK',13,'square-demap/2-D Table']],[45,90;65,90;65,70;85,70])
add_line([sys,'/',['QASK',13,'square-demap/2-D Table']],[195,65;210,65])
add_line([sys,'/',['QASK',13,'square-demap/2-D Table']],[45,35;65,35;65,55;85,55])
add_line([sys,'/',['QASK',13,'square-demap/2-D Table']],[125,65;135,65])
set_param([sys,'/',['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,'/',['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,'/',['QASK',13,'square-demap/2-D Table']],...
		'Mask Translate','xindex=@1; yindex=@2; table=@3; sftab2chk(xindex,yindex,table);')
set_param([sys,'/',['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,'/',['QASK',13,'square-demap/2-D Table']],...
		'Mask Entries','x\/y\/tab\/')


%     Finished composite block ['QASK',13,'square-demap/2-D Table'].

set_param([sys,'/',['QASK',13,'square-demap/2-D Table']],...
		'position',[515,68,545,92])

add_block('built-in/Sum',[sys,'/',['QASK',13,'square-demap/Sum3']])
set_param([sys,'/',['QASK',13,'square-demap/Sum3']],...
		'ForeGround',2,...
		'inputs','+-',...
		'position',[580,73,600,102])

add_block('built-in/Saturation',[sys,'/',['QASK',13,'square-demap/Saturation']])

⌨️ 快捷键说明

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