📄 qamnyqmf.m
字号:
'position',[155,30,225,70])
add_block('built-in/Filter',[sys,'/','Empf鋘ger/Nyquist-Filter/Filter'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter/Filter'],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[255,31,310,69])
add_block('built-in/Outport',[sys,'/','Empf鋘ger/Nyquist-Filter/out_1'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter/out_1'],...
'position',[330,40,350,60])
add_block('built-in/Inport',[sys,'/','Empf鋘ger/Nyquist-Filter/in_1'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter/in_1'],...
'position',[35,30,55,50])
% Subsystem ['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1'].
new_system([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],'Location',[55,192,283,286])
add_block('built-in/Outport',[sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1/Outport']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1/Outport']],...
'position',[160,35,180,55])
add_block('built-in/S-Function',[sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1/S-function1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1/S-function1']],...
'function name','homopuls',...
'parameters','samp_time, out_divid, offset',...
'position',[40,31,105,59])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],[110,45;155,45])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],...
'Mask Display','Vector\nPulse',...
'Mask Type','Pulse generator')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],...
'Mask Dialogue','Vector pulses with sample rate of each pulse as Sample_time ./Divider. |Sample time (scalar, sec):|Divider (integer vector):|Offset (have same dimension as Divider:')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],...
'Mask Translate','samp_time=@1;out_divid=@2;offset=@3;')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],...
'Mask Help','This block generator a vector pulses. The output length is the same as the vector defined in "Divider". The ith element of the output has the sample time Sample_time/Divider(i). All elements in "Divider" must be integers.')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],...
'Mask Entries','td\/1\/off\/')
% Finished composite block ['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1'].
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter/Pulses deivide',13,'same sample time1']],...
'position',[35,71,95,109])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter'],[100,90;115,90;115,60;150,60])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter'],[230,50;250,50])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter'],[60,40;150,40])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter'],[315,50;325,50])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter'],...
'Mask Display','R-C\nfilter',...
'Mask Type','R-C filter')
set_param([sys,'/','Empf鋘ger/Nyquist-Filter'],...
'Mask Dialogue','Design a raised cosine filter and use it to filter the input signal.|Symbol interval (sec):|Computation sampling time (sec):|Filter rolloff factor:|Delay step (integer to multiply symbol interval):|Filter type (FIR or IIR) / (Normal or Sqrt):|With or without sinc filter (1 or 0, suggest 1):')
set_param([sys,'/','Empf鋘ger/Nyquist-Filter'],...
'Mask Translate','td=@1;if length(td)>1,off=td(2);td=td(1);else,off=0;end;ts=@2;R=@3;delay=@4;fil=@5;[num,den]=rcosine(1/td(1),1/ts(1),fil,R,delay);x=@6/2;')
set_param([sys,'/','Empf鋘ger/Nyquist-Filter'],...
'Mask Help','This block designs a raised cosine filter using the specified parameter. The filter is used to filter the input signal. You can optionally use the sinc filter in the filtering computation.')
set_param([sys,'/','Empf鋘ger/Nyquist-Filter'],...
'Mask Entries','1\/.05\/.5\/6\/''FIR''\/0\/')
% Finished composite block 'Empf鋘ger/Nyquist-Filter'.
set_param([sys,'/','Empf鋘ger/Nyquist-Filter'],...
'position',[410,68,490,112])
add_block('built-in/Gain',[sys,'/','Empf鋘ger/Gain1'])
set_param([sys,'/','Empf鋘ger/Gain1'],...
'hide name',0,...
'Gain','1/20',...
'position',[510,212,535,238])
add_block('built-in/Scope',[sys,'/','Empf鋘ger/d_eQ(t)'])
set_param([sys,'/','Empf鋘ger/d_eQ(t)'],...
'orientation',3,...
'Vgain','1.500000',...
'Hgain','25.000000',...
'Vmax','3.000000',...
'Hmax','50.000000',...
'Window',[640,540,1280,640],...
'position',[540,155,570,185])
% Subsystem 'Empf鋘ger/Nyquist-Filter_'.
new_system([sys,'/','Empf鋘ger/Nyquist-Filter_'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_'],'Location',[131,545,589,761])
% Subsystem ['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1'].
new_system([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],'Location',[55,192,283,286])
add_block('built-in/S-Function',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1/S-function1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1/S-function1']],...
'function name','homopuls',...
'parameters','samp_time, out_divid, offset',...
'position',[40,31,105,59])
add_block('built-in/Outport',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1/Outport']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1/Outport']],...
'position',[160,35,180,55])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],[110,45;155,45])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],...
'Mask Display','Vector\nPulse',...
'Mask Type','Pulse generator')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],...
'Mask Dialogue','Vector pulses with sample rate of each pulse as Sample_time ./Divider. |Sample time (scalar, sec):|Divider (integer vector):|Offset (have same dimension as Divider:')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],...
'Mask Translate','samp_time=@1;out_divid=@2;offset=@3;')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],...
'Mask Help','This block generator a vector pulses. The output length is the same as the vector defined in "Divider". The ith element of the output has the sample time Sample_time/Divider(i). All elements in "Divider" must be integers.')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],...
'Mask Entries','td\/1\/off\/')
% Finished composite block ['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1'].
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Pulses deivide',13,'same sample time1']],...
'position',[35,71,95,109])
add_block('built-in/Inport',[sys,'/','Empf鋘ger/Nyquist-Filter_/in_1'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/in_1'],...
'position',[35,30,55,50])
add_block('built-in/Outport',[sys,'/','Empf鋘ger/Nyquist-Filter_/out_1'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/out_1'],...
'position',[330,40,350,60])
add_block('built-in/Filter',[sys,'/','Empf鋘ger/Nyquist-Filter_/Filter'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Filter'],...
'Numerator','num',...
'Denominator','den',...
'Sample time','ts',...
'position',[255,31,310,69])
% Subsystem 'Empf鋘ger/Nyquist-Filter_/Memory Impulse'.
new_system([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'],'Location',[541,520,939,745])
add_block('built-in/Inport',[sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/in_2'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/in_2'],...
'Port','2',...
'position',[25,30,45,50])
% Subsystem ['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector'].
new_system([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],'Location',[419,521,808,713])
add_block('built-in/Unit Delay',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Unit Delay']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Unit Delay']],...
'Sample time','ts',...
'position',[120,87,170,103])
add_block('built-in/Outport',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/out_1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/out_1']],...
'position',[340,25,360,45])
add_block('built-in/Relational Operator',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Relational',13,'Operator1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Relational',13,'Operator1']],...
'position',[200,88,230,112])
add_block('built-in/Relational Operator',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Relational',13,'Operator2']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Relational',13,'Operator2']],...
'Operator','>',...
'position',[265,23,295,47])
add_block('built-in/Constant',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/one1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/one1']],...
'Value','thld',...
'position',[30,135,60,155])
add_block('built-in/Inport',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/in_1']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/in_1']],...
'position',[10,15,30,35])
add_block('built-in/Relational Operator',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Relational',13,'Operator']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector/Relational',13,'Operator']],...
'position',[135,18,165,42])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[35,25;130,25])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[45,25;45,95;115,95])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[175,95;195,95])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[65,145;100,145;100,35;130,35])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[100,145;180,145;180,105;195,105])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[170,30;260,30])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[235,100;240,100;240,40;260,40])
add_line([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],[300,35;335,35])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],...
'Mask Display','Edge\nDetector',...
'Mask Type','Edge Detection')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],...
'Mask Dialogue','Rising edge detection:|Threshold:|Sampling time:',...
'Mask Translate','thld=@1;ts=@2;')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],...
'Mask Help','When the input signal rising edge passed the given shreshold, this block outputs one, otherwise outputs zero.')
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],...
'Mask Entries','thr\/ts\/')
% Finished composite block ['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector'].
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/discrete',13,'Rising edge',13,'detector']],...
'position',[65,26,120,54])
add_block('built-in/Switch',[sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/Switch'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/Switch'],...
'Threshold','.5',...
'position',[295,124,320,156])
add_block('built-in/Constant',[sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/Constant'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/Constant'],...
'Value','x',...
'position',[210,155,230,175])
add_block('built-in/Outport',[sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/out_1'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/out_1'],...
'position',[355,130,375,150])
add_block('built-in/Product',[sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/Product'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/Product'],...
'position',[155,90,180,110])
add_block('built-in/Zero-Order Hold',[sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/Zero-Order',13,'Hold']])
set_param([sys,'/',['Empf鋘ger/Nyquist-Filter_/Memory Impulse/Zero-Order',13,'Hold']],...
'Sample time','ts',...
'position',[205,84,240,116])
add_block('built-in/Inport',[sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/in_1'])
set_param([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse/in_1'],...
'position',[35,185,55,205])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'],[50,40;60,40])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'],[125,40;130,40;130,95;150,95])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'],[235,165;250,165;250,140;290,140])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'],[325,140;350,140])
add_line([sys,'/','Empf鋘ger/Nyquist-Filter_/Memory Impulse'],[60,195;280,195;290,150])
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -