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

📄 test_am2.m

📁 通信系统的matlab仿真程序
💻 M
📖 第 1 页 / 共 3 页
字号:
add_block('built-in/Discrete Transfer Fcn',[sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/Dis. Transfer Fcn']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/Dis. Transfer Fcn']],...
		'Numerator','ts(1)',...
		'Denominator','1',...
		'Sample time','ts',...
		'position',[90,17,135,53])

add_block('built-in/Inport',[sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/in_1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/in_1']],...
		'position',[15,25,35,45])

add_block('built-in/Fcn',[sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/module']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/module']],...
		'Expr','rem(u[1],modu)',...
		'position',[235,29,325,51])

add_block('built-in/Sum',[sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/Sum']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/Sum']],...
		'position',[195,30,215,50])

add_block('built-in/Unit Delay',[sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/Unit Delay']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/Unit Delay']],...
		'Sample time','ts',...
		'x0','init',...
		'position',[345,30,395,50])

add_block('built-in/Outport',[sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/out_1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator/out_1']],...
		'position',[445,30,465,50])
add_line([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],[140,35;190,35])
add_line([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],[40,35;85,35])
add_line([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],[220,40;230,40])
add_line([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],[330,40;340,40])
add_line([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],[400,40;410,40;410,90;175,90;175,45;190,45])
add_line([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],[410,40;440,40])
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],...
		'Mask Display','discrete\nmod-int',...
		'Mask Type','Module Integrator')
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],...
		'Mask Dialogue','Module the given number when state exceed limit|Module bound:|Initial value:|Sample time:',...
		'Mask Translate','init=@2; modu=@1;ts=@3;')
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],...
		'Mask Help','The absolute value of this integrator will not exceed the specified module bound. The state value is set to be zero when the module bound is reached. This block can only be used for scale value calculation.')
set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],...
		'Mask Entries','1\/0\/ts\/')


%     Finished composite block ['DSB-SC-ADM',13,'passband/Dis module',13,'integrator'].

set_param([sys,'/',['DSB-SC-ADM',13,'passband/Dis module',13,'integrator']],...
		'orientation',2,...
		'position',[365,105,425,145])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[400,60;690,60])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[655,60;645,115])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[315,185;300,185;290,135])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[305,125;290,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[360,125;345,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[485,225;655,225;645,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[155,225;420,225])
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']],[110,180;105,180;105,220;120,220])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[605,120;600,120])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[435,125;430,125])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[505,175;480,175;480,130;465,130])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[120,130;105,130;105,65;120,65])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[155,60;335,60])
add_line([sys,'/',['DSB-SC-ADM',13,'passband']],[530,120;465,120])
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])
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']],...
		'ForeGround',3,...
		'hide name',0,...
		'position',[245,33,325,77])

add_block('built-in/Signal Generator',[sys,'/',['Signal',13,'generator']])
set_param([sys,'/',['Signal',13,'generator']],...
		'ForeGround',5,...
		'hide name',0,...
		'Peak','1.000000',...
		'Peak Range','5.000000',...
		'Freq','3.000000',...
		'Freq Range','6.000000',...
		'Wave','Saw',...
		'Units','Rads')
set_param([sys,'/',['Signal',13,'generator']],...
		'position',[20,38,65,72])


%     Subsystem  ['DSB-ADM',13,'baseband'].

new_system([sys,'/',['DSB-ADM',13,'baseband']])
set_param([sys,'/',['DSB-ADM',13,'baseband']],'Location',[172,360,722,581])

add_block('built-in/Outport',[sys,'/',['DSB-ADM',13,'baseband/out_1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/out_1']],...
		'position',[485,35,505,55])

add_block('built-in/Product',[sys,'/',['DSB-ADM',13,'baseband/Product1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Product1']],...
		'orientation',2,...
		'position',[390,110,425,130])

add_block('built-in/Filter',[sys,'/',['DSB-ADM',13,'baseband/Filter']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Filter']],...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...
		'position',[260,26,315,64])


%     Subsystem  ['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply'].

new_system([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],'Location',[297,318,980,694])

add_block('built-in/Inport',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 2']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 2']],...
		'Port','2',...
		'position',[25,205,45,225])

add_block('built-in/Demux',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
		'outputs','2',...
		'Mask Display','Complex to\nReal/Imag',...
		'Mask Type','Complex to Real/Imag')
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
		'Mask Dialogue','Real and imaginary components of complex vector.')
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
		'Mask Help','The Complex to Real/Imag block 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,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split1']],...
		'position',[80,194,155,236])

add_block('built-in/Inport',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Complex',13,'input 1']],...
		'position',[35,90,55,110])

add_block('built-in/Demux',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
		'outputs','2',...
		'Mask Display','Complex to\nReal/Imag',...
		'Mask Type','Complex to Real/Imag')
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
		'Mask Dialogue','Real and imaginary components of complex vector.')
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
		'Mask Help','The Complex to Real/Imag block 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,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Split']],...
		'position',[85,79,160,121])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R = Real',13,'I = Imaginary']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R = Real',13,'I = Imaginary']],...
		'position',[55,0,60,5])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I_out']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I_out']],...
		'position',[450,286,455,291])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R_out']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R_out']],...
		'position',[450,95,455,100])

add_block('built-in/Sum',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum1']],...
		'position',[380,280,400,300])

add_block('built-in/Product',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product2']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product2']],...
		'position',[305,298,335,322])

add_block('built-in/Product',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product3']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product3']],...
		'position',[305,253,335,277])

add_block('built-in/Sum',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Sum']],...
		'inputs','+-',...
		'position',[380,110,400,130])

add_block('built-in/Product',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product1']],...
		'position',[305,143,335,167])

add_block('built-in/Product',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Product']],...
		'position',[305,83,335,107])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R2']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R2']],...
		'position',[190,185,195,190])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/R1']],...
		'position',[195,65,200,70])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I1']],...
		'position',[198,108,203,113])

add_block('built-in/Outport',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Imag']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Imag']],...
		'Port','2',...
		'position',[485,280,505,300])

add_block('built-in/Outport',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Real']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Real']],...
		'position',[495,110,515,130])

add_block('built-in/Note',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I2']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/I2']],...
		'position',[170,225,175,230])

add_block('built-in/Gain',[sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Conjugate']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply/Conjugate']],...
		'Gain','-1',...
		'position',[190,210,230,240])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,310;350,310;350,295;375,295])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,265;350,265;350,285;375,285])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[165,110;250,110;250,150;300,150])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[255,150;255,315;300,315])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[160,205;275,205;275,100;300,100])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[275,205;275,305;300,305])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[165,90;300,90])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[243,90;243,260;300,260])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,155;350,155;350,125;375,125])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[340,95;350,95;350,115;375,115])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[50,215;75,215])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[60,100;80,100])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[405,290;480,290])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[405,120;490,120])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[160,225;185,225])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[235,225;260,225;260,160;300,160])
add_line([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],[260,225;260,270;300,270])


%     Finished composite block ['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply'].

set_param([sys,'/',['DSB-ADM',13,'baseband/Cmplx-in',13,'Re//Im-out',13,'Multiply']],...
		'orientation',2,...
		'position',[40,90,115,130])

add_block('built-in/Filter',[sys,'/',['DSB-ADM',13,'baseband/Filter1']])
set_param([sys,'/',['DSB-ADM',13,'baseband/Filter1']],...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...

⌨️ 快捷键说明

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