29 lines
1000 B
Matlab
29 lines
1000 B
Matlab
function txNDP = channelSounding(cfg)
|
||
% 产生NDP
|
||
guardInterval = 0.8;% Guard interval in Microseconds
|
||
cfgNDP = wlanHESUConfig('APEPLength',0,'GuardInterval',guardInterval); % No data in an NDP
|
||
cfgNDP.ChannelBandwidth = cfg.ChannelBandwidth;
|
||
cfgNDP.NumTransmitAntennas = cfg.numTx;
|
||
cfgNDP.NumSpaceTimeStreams = cfg.numTx;
|
||
txNDP = wlanWaveformGenerator([],cfgNDP);
|
||
|
||
% 加入PN序列,正交序列,重复三次左右
|
||
soundingSeqMod_1 = zadoffChuSeq(29,255);
|
||
soundingSeqMod_2 = zadoffChuSeq(47,255);
|
||
|
||
% Concatenate multiple sequences to sound the channel periodically.
|
||
numSeq = 20; % Number of transmitted sequences in a WSS period
|
||
if cfg.numTx == 1
|
||
soundingSeqMod = [soundingSeqMod_1];
|
||
txSignal = repmat(soundingSeqMod,numSeq,1);
|
||
else
|
||
soundingSeqMod = [soundingSeqMod_1, soundingSeqMod_2];
|
||
txSignal = repmat(soundingSeqMod,numSeq,1);
|
||
end
|
||
|
||
% with 50 sample padding.
|
||
% txNDP = [txNDP; zeros(50,size(txNDP,2))];
|
||
txNDP = [txNDP; txSignal; zeros(50,size(txNDP,2))];
|
||
|
||
end
|