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

📄 tstfdma.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 4 页
字号:
set_param([sys,'/',['DSB-SC AM',13,'passband2/out_1']],...
		'position',[380,50,400,70])

add_block('built-in/Product',[sys,'/',['DSB-SC AM',13,'passband2/Product']])
set_param([sys,'/',['DSB-SC AM',13,'passband2/Product']],...
		'position',[340,42,365,73])

add_block('built-in/Clock',[sys,'/',['DSB-SC AM',13,'passband2/Clock']])
set_param([sys,'/',['DSB-SC AM',13,'passband2/Clock']],...
		'position',[20,65,40,85])

add_block('built-in/Gain',[sys,'/',['DSB-SC AM',13,'passband2/Gain']])
set_param([sys,'/',['DSB-SC AM',13,'passband2/Gain']],...
		'Gain','Fc',...
		'position',[70,56,120,94])

add_block('built-in/Zero-Order Hold',[sys,'/',['DSB-SC AM',13,'passband2/Zero-Order',13,'Hold',13,'timing control']])
set_param([sys,'/',['DSB-SC AM',13,'passband2/Zero-Order',13,'Hold',13,'timing control']],...
		'Sample time','ts',...
		'position',[50,219,85,251])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[195,100;200,100])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[105,130;130,130;130,105;165,105])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[125,75;150,75;150,95;165,95])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[45,75;65,75])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[230,30;270,30;270,50;335,50])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[370,60;375,60])
add_line([sys,'/',['DSB-SC AM',13,'passband2']],[270,100;270,65;335,65])
set_param([sys,'/',['DSB-SC AM',13,'passband2']],...
		'Mask Display','plot(0,0,100,100,x,y);DSB AM',...
		'Mask Type','Passband DSB-SC AM')
set_param([sys,'/',['DSB-SC AM',13,'passband2']],...
		'Mask Dialogue','Modulate the input signal using\nDSB-SC AM method.|Carrier frequency (Hz):|Initial Phase (rad):|Sample time (sec):')
set_param([sys,'/',['DSB-SC AM',13,'passband2']],...
		'Mask Translate','Fc=@1;Fc=Fc*2*pi;Ph=@2;ts=@3;[x,y]=moduicon(1);')
set_param([sys,'/',['DSB-SC AM',13,'passband2']],...
		'Mask Help','This block modulates the input signal using the double-sideband suppressed-carrier amplitude modulation. In general, the carrier frequency should be much higher than the message signal frequency.')
set_param([sys,'/',['DSB-SC AM',13,'passband2']],...
		'Mask Entries','F4\/0\/ts\/')


%     Finished composite block ['DSB-SC AM',13,'passband2'].

set_param([sys,'/',['DSB-SC AM',13,'passband2']],...
		'hide name',0,...
		'position',[140,178,220,222])

add_block('built-in/Mux',[sys,'/','Mux1'])
set_param([sys,'/','Mux1'],...
		'hide name',0,...
		'inputs','2',...
		'position',[755,36,790,69])

add_block('built-in/Scope',[sys,'/','element 1'])
set_param([sys,'/','element 1'],...
		'Vgain','1.500000',...
		'Hgain','4.000000',...
		'Vmax','3.000000',...
		'Hmax','8.000000',...
		'Window',[254,339,523,623])
open_system([sys,'/','element 1'])
set_param([sys,'/','element 1'],...
		'position',[825,42,845,68])

add_block('built-in/Mux',[sys,'/','Mux3'])
set_param([sys,'/','Mux3'],...
		'hide name',0,...
		'inputs','2',...
		'position',[755,191,790,224])

add_block('built-in/Scope',[sys,'/','element 3'])
set_param([sys,'/','element 3'],...
		'Vgain','1.500000',...
		'Hgain','4.000000',...
		'Vmax','3.000000',...
		'Hmax','8.000000',...
		'Window',[768,337,1014,625])
open_system([sys,'/','element 3'])
set_param([sys,'/','element 3'],...
		'position',[825,197,845,223])

add_block('built-in/Discrete State-Space',[sys,'/',['Butterworth',13,'IIR BP Filter1']])
set_param([sys,'/',['Butterworth',13,'IIR BP Filter1']],...
		'hide name',0,...
		'A','a',...
		'B','b',...
		'C','c',...
		'D','d',...
		'Sample time','ts',...
		'Mask Display','plot(1:64,abs(h))',...
		'Mask Type','butter(BP)')
set_param([sys,'/',['Butterworth',13,'IIR BP Filter1']],...
		'Mask Dialogue','Butterworth band pass filter.\n(Requires Signal Processing Toolbox)|Center frequency (0 to 1):|Bandwidth (0 to 1):|Order:|Sample time:')
set_param([sys,'/',['Butterworth',13,'IIR BP Filter1']],...
		'Mask Translate','bw = @2/2; [a,b,c,d]=butter(@3,[@1-bw,@1+bw] ); ts=@4; [num,den]=ss2tf(a,b,c,d,1); if (@3 <= 8), [a,b,c,d]=tf2ss(num,den); end; h=freqz(num,den,64); ')
set_param([sys,'/',['Butterworth',13,'IIR BP Filter1']],...
		'Mask Help','IIR Butterworth band pass filter using MATLAB''s butter command.',...
		'Mask Entries','F0*ts*2\/0.05\/7\/ts\/',...
		'position',[250,48,320,82])

add_block('built-in/Scope',[sys,'/','multiplex signal'])
set_param([sys,'/','multiplex signal'],...
		'Vgain','3.000000',...
		'Hgain','4.000000',...
		'Vmax','6.000000',...
		'Hmax','8.000000',...
		'Window',[8,335,270,621])
open_system([sys,'/','multiplex signal'])
set_param([sys,'/','multiplex signal'],...
		'position',[425,182,445,208])

add_block('built-in/Mux',[sys,'/','Mux2'])
set_param([sys,'/','Mux2'],...
		'hide name',0,...
		'inputs','2',...
		'position',[755,106,790,139])

add_block('built-in/Scope',[sys,'/','element 2'])
set_param([sys,'/','element 2'],...
		'Vgain','1.500000',...
		'Hgain','4.000000',...
		'Vmax','3.000000',...
		'Hmax','8.000000',...
		'Window',[515,339,770,626])
open_system([sys,'/','element 2'])
set_param([sys,'/','element 2'],...
		'position',[825,112,845,138])

add_block('built-in/Discrete State-Space',[sys,'/',['Butterworth',13,'IIR BP Filter4']])
set_param([sys,'/',['Butterworth',13,'IIR BP Filter4']],...
		'hide name',0,...
		'A','a',...
		'B','b',...
		'C','c',...
		'D','d',...
		'Sample time','ts',...
		'Mask Display','plot(1:64,abs(h))',...
		'Mask Type','butter(BP)')
set_param([sys,'/',['Butterworth',13,'IIR BP Filter4']],...
		'Mask Dialogue','Butterworth band pass filter.\n(Requires Signal Processing Toolbox)|Center frequency (0 to 1):|Bandwidth (0 to 1):|Order:|Sample time:')
set_param([sys,'/',['Butterworth',13,'IIR BP Filter4']],...
		'Mask Translate','bw = @2/2; [a,b,c,d]=butter(@3,[@1-bw,@1+bw] ); ts=@4; [num,den]=ss2tf(a,b,c,d,1); if (@3 <= 8), [a,b,c,d]=tf2ss(num,den); end; h=freqz(num,den,64); ')
set_param([sys,'/',['Butterworth',13,'IIR BP Filter4']],...
		'Mask Help','IIR Butterworth band pass filter using MATLAB''s butter command.',...
		'Mask Entries','F0*ts*2\/0.05\/7\/ts\/',...
		'position',[520,43,590,77])


%     Subsystem  ['DSB-SC-ADM',13,'passband2'].

new_system([sys,'/',['DSB-SC-ADM',13,'passband2']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2']],'Location',[588,690,716,690])

add_block('built-in/Outport',[sys,'/',['DSB-SC-ADM',13,'passband2/In-phase',13,'output']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/In-phase',13,'output']],...
		'position',[695,50,715,70])

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

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

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

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

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

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

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

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

add_block('built-in/Sum',[sys,'/',['DSB-SC-ADM',13,'passband2/Sum1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Sum1']],...
		'orientation',2,...
		'position',[265,120,285,140])

add_block('built-in/Constant',[sys,'/',['DSB-SC-ADM',13,'passband2/Carrier',13,'frequency1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Carrier',13,'frequency1']],...
		'orientation',2,...
		'Value','Ph',...
		'position',[320,175,340,195])

add_block('built-in/Gain',[sys,'/',['DSB-SC-ADM',13,'passband2/Gain1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Gain1']],...
		'orientation',2,...
		'Gain','pi2',...
		'position',[310,110,340,140])

add_block('built-in/Sum',[sys,'/',['DSB-SC-ADM',13,'passband2/Sum']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Sum']],...
		'orientation',2,...
		'position',[440,115,460,135])

add_block('built-in/Filter',[sys,'/',['DSB-SC-ADM',13,'passband2/Filter2']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Filter2']],...
		'orientation',2,...
		'Numerator','num',...
		'Denominator','den',...
		'Sample time','ts',...
		'position',[535,100,595,140])

add_block('built-in/Product',[sys,'/',['DSB-SC-ADM',13,'passband2/Product1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Product1']],...
		'orientation',2,...
		'position',[610,110,640,130])

add_block('built-in/Constant',[sys,'/',['DSB-SC-ADM',13,'passband2/Carrier',13,'frequency']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Carrier',13,'frequency']],...
		'orientation',2,...
		'Value','Fc',...
		'position',[510,165,530,185])


%     Subsystem  ['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator'].

new_system([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],'Location',[40,403,515,507])

add_block('built-in/Discrete Transfer Fcn',[sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator/Dis. Transfer Fcn']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/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,'passband2/Dis module',13,'integrator/in_1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator/in_1']],...
		'position',[15,25,35,45])

add_block('built-in/Fcn',[sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator/module']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/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,'passband2/Dis module',13,'integrator/Sum']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator/Sum']],...
		'position',[195,30,215,50])

add_block('built-in/Unit Delay',[sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator/Unit Delay']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/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,'passband2/Dis module',13,'integrator/out_1']])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator/out_1']],...
		'position',[445,30,465,50])
add_line([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],[140,35;190,35])
add_line([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],[40,35;85,35])
add_line([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],[220,40;230,40])
add_line([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],[330,40;340,40])
add_line([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],[400,40;410,40;410,90;175,90;175,45;190,45])
add_line([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],[410,40;440,40])
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],...
		'Mask Display','discrete\nmod-int',...
		'Mask Type','Module Integrator')
set_param([sys,'/',['DSB-SC-ADM',13,'passband2/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,'passband2/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,'passband2/Dis module',13,'integrator']],...
		'Mask Entries','1\/0\/ts\/')


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

set_param([sys,'/',['DSB-SC-ADM',13,'passband2/Dis module',13,'integrator']],...
		'orientation',2,...
		'position',[365,105,425,145])

⌨️ 快捷键说明

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