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

📄 tstam2cd.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 3 页
字号:
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Sum1']],...
		'orientation',2,...
		'position',[265,120,285,140])

add_block('built-in/Product',[sys,'/',['DSB-SC-ADM',13,'passband/Product2']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Product2']],...
		'position',[125,215,150,235])

add_block('built-in/Fcn',[sys,'/',['DSB-SC-ADM',13,'passband/sin1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/sin1']],...
		'orientation',2,...
		'Expr','-2*sin(u[1])',...
		'position',[115,167,220,193])

add_block('built-in/Product',[sys,'/',['DSB-SC-ADM',13,'passband/Product']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Product']],...
		'position',[125,50,150,70])

add_block('built-in/Inport',[sys,'/',['DSB-SC-ADM',13,'passband/in_1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/in_1']],...
		'position',[45,45,65,65])

add_block('built-in/Note',[sys,'/',['DSB-SC-ADM',13,'passband/Ref: Hambley: An Intro to Comm. Systems. pp69']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Ref: Hambley: An Intro to Comm. Systems. pp69']],...
		'position',[260,350,265,355])

add_block('built-in/Fcn',[sys,'/',['DSB-SC-ADM',13,'passband/sin']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/sin']],...
		'orientation',2,...
		'Expr','2*cos(u[1])',...
		'position',[125,118,210,142])

add_block('built-in/Filter',[sys,'/',['DSB-SC-ADM',13,'passband/Filter']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Filter']],...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...
		'position',[340,41,395,79])

add_block('built-in/Filter',[sys,'/',['DSB-SC-ADM',13,'passband/Filter1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Filter1']],...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...
		'position',[425,206,480,244])

add_block('built-in/Outport',[sys,'/',['DSB-SC-ADM',13,'passband/In-phase',13,'output']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/In-phase',13,'output']],...
		'position',[695,50,715,70])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[260,130;215,130])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[240,130;240,180;225,180])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[530,120;465,120])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[155,60;335,60])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[120,130;105,130;105,65;120,65])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[505,175;480,175;480,130;465,130])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[435,125;430,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[605,120;600,120])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[110,180;105,180;105,220;120,220])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[70,55;120,55])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[90,55;90,230;120,230])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[155,225;420,225])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[485,225;655,225;645,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[360,125;345,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[305,125;290,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[315,185;300,185;290,135])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[400,60;690,60])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[655,60;645,115])
set_param([sys,'/',['DSB-SC-ADM',13,'passband']],...
		'Mask Display','plot(0,0,100,100,x,y);DSB ADM',...
		'Mask Type','Passband DSB-SC ADM')
set_param([sys,'/',['DSB-SC-ADM',13,'passband']],...
		'Mask Dialogue','Demodulate a DSB-SC AM modulated signal.|Carrier frequency (Hz):|Lowpass filter numerator:|Lowpass filter denominator:|Initial phase (rad):|Sample time (sec):')
set_param([sys,'/',['DSB-SC-ADM',13,'passband']],...
		'Mask Translate','Fc=@1;num=@2;den=@3;Ph=@4;pi2=pi*2;ts=@5;[x,y]=moduicon(2);')
set_param([sys,'/',['DSB-SC-ADM',13,'passband']],...
		'Mask Help','This block demodulates a DSB-SC-AM modulated signal using Costas phase-locked loop method. This block uses a discrete-time lowpass filter that passes the signal message and eliminates the carrier signal. ')
set_param([sys,'/',['DSB-SC-ADM',13,'passband']],...
		'Mask Entries','100/2/pi\/num\/den\/pi/2\/ts\/')


%     Finished composite block ['DSB-SC-ADM',13,'passband'].

set_param([sys,'/',['DSB-SC-ADM',13,'passband']],...
		'hide name',0,...
		'position',[340,38,420,82])


%     Subsystem  'MASK demap'.

new_system([sys,'/','MASK demap'])
set_param([sys,'/','MASK demap'],'Location',[187,342,628,482])

add_block('built-in/Zero-Order Hold',[sys,'/',['MASK demap/Zero-Order',13,'Hold']])
set_param([sys,'/',['MASK demap/Zero-Order',13,'Hold']],...
		'Sample time','td',...
		'position',[85,29,120,61])

add_block('built-in/Constant',[sys,'/','MASK demap/Shift key'])
set_param([sys,'/','MASK demap/Shift key'],...
		'Value','sft',...
		'position',[115,93,135,117])

add_block('built-in/Sum',[sys,'/','MASK demap/Sum2'])
set_param([sys,'/','MASK demap/Sum2'],...
		'inputs','+-',...
		'position',[180,38,200,67])

add_block('built-in/Abs',[sys,'/','MASK demap/Abs'])
set_param([sys,'/','MASK demap/Abs'],...
		'position',[235,42,270,68])

add_block('built-in/Outport',[sys,'/','MASK demap/out_1'])
set_param([sys,'/','MASK demap/out_1'],...
		'position',[400,45,420,65])

add_block('built-in/S-Function',[sys,'/','MASK demap/Minimum'])
set_param([sys,'/','MASK demap/Minimum'],...
		'function name','arymimai',...
		'parameters','''min''',...
		'position',[315,45,370,65])

add_block('built-in/Inport',[sys,'/','MASK demap/in_1'])
set_param([sys,'/','MASK demap/in_1'],...
		'position',[30,35,50,55])
add_line([sys,'/','MASK demap'],[55,45;80,45])
add_line([sys,'/','MASK demap'],[275,55;310,55])
add_line([sys,'/','MASK demap'],[125,45;175,45])
add_line([sys,'/','MASK demap'],[375,55;395,55])
add_line([sys,'/','MASK demap'],[140,105;155,105;155,60;175,60])
add_line([sys,'/','MASK demap'],[205,55;230,55])
set_param([sys,'/','MASK demap'],...
		'Mask Display','MASK\ndemap',...
		'Mask Type','MASK demap')
set_param([sys,'/','MASK demap'],...
		'Mask Dialogue','Reverse the MASK mapping process\nConvert [-1 1] analog signal to [0, M-1] symbols.|M-ary number (digit integers in ranger [0, M-1]):|Output symbol interval and offset (sec):')
set_param([sys,'/','MASK demap'],...
		'Mask Translate','N=@1;Ac=1;sft=[0:N-1]*Ac*2/(N-1)-Ac;td=@2;')
set_param([sys,'/','MASK demap'],...
		'Mask Help','This block demaps a MASK mapped signal back to digit symbols. You can place this block after a amplitude demodulation block. The input of this block is an analog signal in the range [-1, 1]. The demodulation decides the closest integer fitting in [0,M-1] range. When the input symbol interval is a two-elements vector, the second element is offset. The default offset value is 0.')
set_param([sys,'/','MASK demap'],...
		'Mask Entries','M\/[td, td-ts]\/')


%     Finished composite block 'MASK demap'.

set_param([sys,'/','MASK demap'],...
		'hide name',0,...
		'position',[455,38,535,82])


%     Subsystem  'MASK map'.

new_system([sys,'/','MASK map'])
set_param([sys,'/','MASK map'],'Location',[520,162,902,335])

add_block('built-in/Outport',[sys,'/','MASK map/out_1'])
set_param([sys,'/','MASK map/out_1'],...
		'position',[315,65,335,85])

add_block('built-in/Zero-Order Hold',[sys,'/',['MASK map/Zero-Order',13,'Hold']])
set_param([sys,'/',['MASK map/Zero-Order',13,'Hold']],...
		'Sample time','td',...
		'position',[100,24,135,56])

add_block('built-in/Inport',[sys,'/','MASK map/in_1'])
set_param([sys,'/','MASK map/in_1'],...
		'position',[40,30,60,50])

add_block('built-in/Gain',[sys,'/','MASK map/Gain'])
set_param([sys,'/','MASK map/Gain'],...
		'Gain','Kc',...
		'position',[180,25,220,55])

add_block('built-in/Sum',[sys,'/','MASK map/Sum1'])
set_param([sys,'/','MASK map/Sum1'],...
		'inputs','+-',...
		'position',[250,63,270,87])

add_block('built-in/Constant',[sys,'/','MASK map/Gain diff'])
set_param([sys,'/','MASK map/Gain diff'],...
		'Value','Ac',...
		'position',[180,96,215,124])
add_line([sys,'/','MASK map'],[225,40;230,40;230,70;245,70])
add_line([sys,'/','MASK map'],[220,110;230,110;230,80;245,80])
add_line([sys,'/','MASK map'],[275,75;310,75])
add_line([sys,'/','MASK map'],[65,40;95,40])
add_line([sys,'/','MASK map'],[140,40;175,40])
set_param([sys,'/','MASK map'],...
		'Mask Display','MASK\nmap',...
		'Mask Type','MASK map')
set_param([sys,'/','MASK map'],...
		'Mask Dialogue','Map a digital symbol onto an analog\nsignal in the range [-1, 1] using M-ary\namplitude shift keying modulation mapping.|M-ary number (input integers in range [0, M-1]):|Input symbol interval and offset (sec):')
set_param([sys,'/','MASK map'],...
		'Mask Translate','N=@1;Ac=1;Kc=Ac*2/(N-1);td=@2;')
set_param([sys,'/','MASK map'],...
		'Mask Help','This block maps an input digit signal onto a signal in the range [-1, 1]. The coded signal can be modulated using analog\nmodulation blocks. Input digits are in the range [0, M-1], where M is the M-ary number. 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,'/','MASK map'],...
		'Mask Entries','M\/td\/')


%     Finished composite block 'MASK map'.

set_param([sys,'/','MASK map'],...
		'hide name',0,...
		'position',[125,38,205,82])


%     Subsystem  ['Sampled read',13,'from wksp'].

new_system([sys,'/',['Sampled read',13,'from wksp']])
set_param([sys,'/',['Sampled read',13,'from wksp']],'Location',[355,528,737,675])


%     Subsystem  ['Sampled read',13,'from wksp/Pulses deivide',13,'same sample time1'].

new_system([sys,'/',['Sampled read',13,'from wksp/Pulses deivide',13,'same sample time1']])
set_param([sys,'/',['Sampled read',13,'from wksp/Pulses deivide',13,'same sample time1']],'Location',[55,192,283,286])

add_block('built-in/S-Function',[sys,'/',['Sampled read',13,'from wksp/Pulses deivide',13,'same sample time1/S-function1']])
set_param([sys,'/',['Sampled read',13,'from wksp/Pulses deivide',13,'same sample time1/S-function1']],...
		'function name','homopuls',...

⌨️ 快捷键说明

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