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

📄 tbchcode.m

📁 数字通信第四版原书的例程
💻 M
📖 第 1 页 / 共 3 页
字号:
		'position',[90,100,120,120])

add_block('built-in/State-Space',[sys,'/',['Binary vector',13,'noise generator/Matrix',13,'Gain']])
set_param([sys,'/',['Binary vector',13,'noise generator/Matrix',13,'Gain']],...
		'A','[]',...
		'B','[]',...
		'C','[]',...
		'D','K',...
		'Mask Display','K',...
		'Mask Type','Matrix Gain',...
		'Mask Dialogue','Matrix Gain.|Gain matrix:')
set_param([sys,'/',['Binary vector',13,'noise generator/Matrix',13,'Gain']],...
		'Mask Translate','K = @1;',...
		'Mask Help','Multiplies input vector by entered matrix to produce output vector (y=Au).',...
		'Mask Entries','y\/')
set_param([sys,'/',['Binary vector',13,'noise generator/Matrix',13,'Gain']],...
		'position',[255,30,300,60])

add_block('built-in/Relational Operator',[sys,'/',['Binary vector',13,'noise generator/Relational',13,'Operator']])
set_param([sys,'/',['Binary vector',13,'noise generator/Relational',13,'Operator']],...
		'position',[180,33,210,57])

add_block('built-in/Signal Generator',[sys,'/',['Binary vector',13,'noise generator/Uniform',13,'noise gen.']])
set_param([sys,'/',['Binary vector',13,'noise generator/Uniform',13,'noise gen.']],...
		'Peak','1.000000',...
		'Peak Range','5.000000',...
		'Freq','1234.000000',...
		'Freq Range','6170.000000',...
		'Wave','Rnd',...
		'Units','Rads')
set_param([sys,'/',['Binary vector',13,'noise generator/Uniform',13,'noise gen.']],...
		'position',[60,23,105,57])

add_block('built-in/Constant',[sys,'/',['Binary vector',13,'noise generator/Constant1']])
set_param([sys,'/',['Binary vector',13,'noise generator/Constant1']],...
		'Value','p',...
		'position',[75,210,105,230])

add_block('built-in/Relational Operator',[sys,'/',['Binary vector',13,'noise generator/Relational',13,'Operator1']])
set_param([sys,'/',['Binary vector',13,'noise generator/Relational',13,'Operator1']],...
		'position',[180,168,210,192])

add_block('built-in/Signal Generator',[sys,'/',['Binary vector',13,'noise generator/Uniform',13,'noise gen.1']])
set_param([sys,'/',['Binary vector',13,'noise generator/Uniform',13,'noise gen.1']],...
		'Peak','1.000000',...
		'Peak Range','5.000000',...
		'Freq','1234.000000',...
		'Freq Range','6170.000000',...
		'Wave','Rnd',...
		'Units','Rads')
set_param([sys,'/',['Binary vector',13,'noise generator/Uniform',13,'noise gen.1']],...
		'Mask Display','',...
		'position',[50,148,95,182])

add_block('built-in/Switch',[sys,'/',['Binary vector',13,'noise generator/Switch']])
set_param([sys,'/',['Binary vector',13,'noise generator/Switch']],...
		'Threshold','0.5',...
		'position',[450,164,480,196])

add_block('built-in/Outport',[sys,'/',['Binary vector',13,'noise generator/out_1']])
set_param([sys,'/',['Binary vector',13,'noise generator/out_1']],...
		'position',[535,170,555,190])

add_block('built-in/Constant',[sys,'/',['Binary vector',13,'noise generator/Constant2']])
set_param([sys,'/',['Binary vector',13,'noise generator/Constant2']],...
		'Value','zeros(1,n)',...
		'position',[300,206,370,234])

add_block('built-in/S-Function',[sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']])
set_param([sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']],...
		'function name','simde2bi',...
		'parameters','len, p',...
		'Mask Display','Sca to vec\nconverter')
set_param([sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Type','Scalar integer  to vector converter')
set_param([sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Dialogue','Positive decimal interger to binary converter.|Output vector length:|Output element base:')
set_param([sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Translate','len=@1;p=@2;')
set_param([sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Help','This block converts scaler positive decimal integer input to an arbitrary base integer  vector output with specified vector length and output element base. The first element of the output vector is the lowest binary bit. For example, for a length two binary output, y(1)=0, y(2)=1 means the input is 1; y(0)=1, y(2)=0 means the input is 2.')
set_param([sys,'/',['Binary vector',13,'noise generator/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Entries','n\/2\/',...
		'position',[345,26,405,64])
add_line([sys,'/',['Binary vector',13,'noise generator']],[375,220;405,220;405,190;445,190])
add_line([sys,'/',['Binary vector',13,'noise generator']],[485,180;530,180])
add_line([sys,'/',['Binary vector',13,'noise generator']],[410,45;425,45;425,170;445,170])
add_line([sys,'/',['Binary vector',13,'noise generator']],[215,180;445,180])
add_line([sys,'/',['Binary vector',13,'noise generator']],[110,220;135,220;135,185;175,185])
add_line([sys,'/',['Binary vector',13,'noise generator']],[100,165;135,165;135,175;175,175])
add_line([sys,'/',['Binary vector',13,'noise generator']],[215,45;250,45])
add_line([sys,'/',['Binary vector',13,'noise generator']],[125,110;140,110;140,50;175,50])
add_line([sys,'/',['Binary vector',13,'noise generator']],[110,40;175,40])
add_line([sys,'/',['Binary vector',13,'noise generator']],[305,45;340,45])
set_param([sys,'/',['Binary vector',13,'noise generator']],...
		'Mask Display','Random\nB-vector',...
		'Mask Type','Binary vector noise generator.')
set_param([sys,'/',['Binary vector',13,'noise generator']],...
		'Mask Dialogue','Generatea binary vector with at most given number of ones randomly distributed in the vector.|Vector length(can''t be changed during simulation):|Limit number of ones(can''t be changed during simulation):|Probability of all zeros (%):')
set_param([sys,'/',['Binary vector',13,'noise generator']],...
		'Mask Translate','n=@1;m=@2;x=[1:2^n-1];id=find(sum(de2bi(x)'')<=m);x=x(id);lenx=length(x); y=x-[0,x(1:lenx-1)];x=[-1:2/lenx:(lenx-2)/lenx];p=@3/50-1;')
set_param([sys,'/',['Binary vector',13,'noise generator']],...
		'Mask Help','This block outputs a binary vector with specified length. There are at most the given number of ones randomly distributed in the vector.')
set_param([sys,'/',['Binary vector',13,'noise generator']],...
		'Mask Entries','5\/1\/50\/')


%     Finished composite block ['Binary vector',13,'noise generator'].

set_param([sys,'/',['Binary vector',13,'noise generator']],...
		'position',[200,123,255,157])


%     Subsystem  ['Binary vector',13,'noise generator2'].

new_system([sys,'/',['Binary vector',13,'noise generator2']])
set_param([sys,'/',['Binary vector',13,'noise generator2']],'Location',[405,495,1004,748])

add_block('built-in/Constant',[sys,'/',['Binary vector',13,'noise generator2/Constant']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Constant']],...
		'Value','x',...
		'position',[90,100,120,120])

add_block('built-in/State-Space',[sys,'/',['Binary vector',13,'noise generator2/Matrix',13,'Gain']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Matrix',13,'Gain']],...
		'A','[]',...
		'B','[]',...
		'C','[]',...
		'D','K',...
		'Mask Display','K',...
		'Mask Type','Matrix Gain',...
		'Mask Dialogue','Matrix Gain.|Gain matrix:')
set_param([sys,'/',['Binary vector',13,'noise generator2/Matrix',13,'Gain']],...
		'Mask Translate','K = @1;',...
		'Mask Help','Multiplies input vector by entered matrix to produce output vector (y=Au).',...
		'Mask Entries','y\/')
set_param([sys,'/',['Binary vector',13,'noise generator2/Matrix',13,'Gain']],...
		'position',[255,30,300,60])

add_block('built-in/Relational Operator',[sys,'/',['Binary vector',13,'noise generator2/Relational',13,'Operator']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Relational',13,'Operator']],...
		'position',[180,33,210,57])

add_block('built-in/Signal Generator',[sys,'/',['Binary vector',13,'noise generator2/Uniform',13,'noise gen.']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Uniform',13,'noise gen.']],...
		'Peak','1.000000',...
		'Peak Range','5.000000',...
		'Freq','1234.000000',...
		'Freq Range','6170.000000',...
		'Wave','Rnd',...
		'Units','Rads')
set_param([sys,'/',['Binary vector',13,'noise generator2/Uniform',13,'noise gen.']],...
		'position',[60,23,105,57])

add_block('built-in/Constant',[sys,'/',['Binary vector',13,'noise generator2/Constant1']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Constant1']],...
		'Value','p',...
		'position',[75,210,105,230])

add_block('built-in/Relational Operator',[sys,'/',['Binary vector',13,'noise generator2/Relational',13,'Operator1']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Relational',13,'Operator1']],...
		'position',[180,168,210,192])

add_block('built-in/Signal Generator',[sys,'/',['Binary vector',13,'noise generator2/Uniform',13,'noise gen.1']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Uniform',13,'noise gen.1']],...
		'Peak','1.000000',...
		'Peak Range','5.000000',...
		'Freq','1234.000000',...
		'Freq Range','6170.000000',...
		'Wave','Rnd',...
		'Units','Rads')
set_param([sys,'/',['Binary vector',13,'noise generator2/Uniform',13,'noise gen.1']],...
		'Mask Display','',...
		'position',[50,148,95,182])

add_block('built-in/Switch',[sys,'/',['Binary vector',13,'noise generator2/Switch']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Switch']],...
		'Threshold','0.5',...
		'position',[450,164,480,196])

add_block('built-in/Outport',[sys,'/',['Binary vector',13,'noise generator2/out_1']])
set_param([sys,'/',['Binary vector',13,'noise generator2/out_1']],...
		'position',[535,170,555,190])

add_block('built-in/Constant',[sys,'/',['Binary vector',13,'noise generator2/Constant2']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Constant2']],...
		'Value','zeros(1,n)',...
		'position',[300,206,370,234])

add_block('built-in/S-Function',[sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']])
set_param([sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']],...
		'function name','simde2bi',...
		'parameters','len, p',...
		'Mask Display','Sca to vec\nconverter')
set_param([sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Type','Scalar integer  to vector converter')
set_param([sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Dialogue','Positive decimal interger to binary converter.|Output vector length:|Output element base:')
set_param([sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Translate','len=@1;p=@2;')
set_param([sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Help','This block converts scaler positive decimal integer input to an arbitrary base integer  vector output with specified vector length and output element base. The first element of the output vector is the lowest binary bit. For example, for a length two binary output, y(1)=0, y(2)=1 means the input is 1; y(0)=1, y(2)=0 means the input is 2.')
set_param([sys,'/',['Binary vector',13,'noise generator2/Integer scalar',13,'to vector',13,'converter']],...
		'Mask Entries','n\/2\/',...
		'position',[345,26,405,64])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[375,220;405,220;405,190;445,190])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[485,180;530,180])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[410,45;425,45;425,170;445,170])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[215,180;445,180])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[110,220;135,220;135,185;175,185])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[100,165;135,165;135,175;175,175])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[215,45;250,45])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[125,110;140,110;140,50;175,50])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[110,40;175,40])
add_line([sys,'/',['Binary vector',13,'noise generator2']],[305,45;340,45])
set_param([sys,'/',['Binary vector',13,'noise generator2']],...
		'Mask Display','Random\nB-vector',...
		'Mask Type','Binary vector noise generator.')
set_param([sys,'/',['Binary vector',13,'noise generator2']],...
		'Mask Dialogue','Generatea binary vector with at most given number of ones randomly distributed in the vector.|Vector length(can''t be changed during simulation):|Limit number of ones(can''t be changed during simulation):|Probability of all zeros (%):')
set_param([sys,'/',['Binary vector',13,'noise generator2']],...
		'Mask Translate','n=@1;m=@2;x=[1:2^n-1];id=find(sum(de2bi(x)'')<=m);x=x(id);lenx=length(x); y=x-[0,x(1:lenx-1)];x=[-1:2/lenx:(lenx-2)/lenx];p=@3/50-1;')
set_param([sys,'/',['Binary vector',13,'noise generator2']],...
		'Mask Help','This block outputs a binary vector with specified length. There are at most the given number of ones randomly distributed in the vector.')
set_param([sys,'/',['Binary vector',13,'noise generator2']],...
		'Mask Entries','5\/1\/50\/')


%     Finished composite block ['Binary vector',13,'noise generator2'].

set_param([sys,'/',['Binary vector',13,'noise generator2']],...
		'position',[195,268,250,302])

add_block('built-in/Mux',[sys,'/','Mux'])
set_param([sys,'/','Mux'],...
		'position',[765,58,800,92])

add_block('built-in/Mux',[sys,'/','Mux1'])
set_param([sys,'/','Mux1'],...
		'inputs','[5 5 5]',...
		'position',[325,208,360,242])


%     Subsystem  ['Binary vector',13,'noise generator1'].

new_system([sys,'/',['Binary vector',13,'noise generator1']])
set_param([sys,'/',['Binary vector',13,'noise generator1']],'Location',[405,495,1004,748])

add_block('built-in/Constant',[sys,'/',['Binary vector',13,'noise generator1/Constant2']])
set_param([sys,'/',['Binary vector',13,'noise generator1/Constant2']],...
		'Value','zeros(1,n)',...
		'position',[300,206,370,234])

add_block('built-in/Outport',[sys,'/',['Binary vector',13,'noise generator1/out_1']])
set_param([sys,'/',['Binary vector',13,'noise generator1/out_1']],...

⌨️ 快捷键说明

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