📄 ui_read_options.m
字号:
function sim_options = ui_read_options
%分组长度,用比特表示,注意输入的是以字节为单位的。
pkt_length = eval(get(findobj('Tag', 'PktLen'),'String'))*8;
%卷积编码的选项(码率)
conv_code_rate = get(findobj('Tag', 'ConvCodeRate'),'String');
conv_code_rate = conv_code_rate(get(findobj('Tag', 'ConvCodeRate'),'Value'),:);
%是否交织
interleave_bits = get(findobj('Tag', 'InterleaveBits'),'Value');
% 交织方式
modulation = get(findobj('Tag', 'Modulation'),'String');
modulation = modulation(get(findobj('Tag', 'Modulation'),'Value'),:);
% 是否采用发射分集
use_tx_div = get(findobj('Tag', 'UseTxDiversity'),'Value');
%是否采用接收分集
use_rx_div = get(findobj('Tag', 'UseRxDiversity'),'Value');
% 频偏
freq_error = eval(get(findobj('Tag', 'FreqError'),'String'));
%信道模型
if get(findobj('Tag', 'AWGN'),'Value')
chan_model = 'AWGN';
elseif get(findobj('Tag', 'ExponentialDecay'),'Value')
chan_model = 'ExponentialDecay';
end
exp_decay_trms = eval(get(findobj('Tag', 'ExpDecayTrms'),'String'));
% SNR
snr = eval(get(findobj('Tag', 'SNR'),'String'));
% 同步选项
packet_detection = get(findobj('Tag', 'PacketDetection'),'Value');
fine_time_sync = get(findobj('Tag', 'FineTimeSync'),'Value');
freq_sync = get(findobj('Tag', 'FreqSync'),'Value');
pilot_phase_tracking = get(findobj('Tag', 'PilotPhaseTrack'),'Value');
channel_estimation = get(findobj('Tag', 'ChannelEst'),'Value');
rx_timing_offset = eval(get(findobj('Tag', 'RxTimingOffset'),'String'));
%每次循环的分组数
pkts_per_run = eval(get(findobj('Tag', 'PktsToSimulate'),'String'));
sim_options = struct('PacketLength', pkt_length, ...
'ConvCodeRate', conv_code_rate, ...
'InterleaveBits', interleave_bits, ...
'Modulation', modulation,...
'UseTxDiv', use_tx_div, ...
'UseRxDiv', use_rx_div, ...
'FreqError', freq_error, ...
'ChannelModel', chan_model, ...
'ExpDecayTrms', exp_decay_trms, ...
'SNR', snr,...
'PacketDetection', packet_detection, ...
'FineTimeSync', fine_time_sync, ...
'FreqSync', freq_sync, ...
'PilotPhaseTracking', pilot_phase_tracking, ...
'ChannelEstimation', channel_estimation, ...
'RxTimingOffset', rx_timing_offset, ...
'PktsToSimulate', pkts_per_run);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -