www.gusucode.com > MATLAB编程伽利略和北斗的BOC捕获跟踪和解算程序 > MATLAB编程伽利略和北斗的BOC捕获跟踪和解算程序/gnss_sw_radio2/Acquisition_tb_E5b_full.m
clear all; close all; samples = Samples('E5b',... '/home/ondrej/wnav/snapshots/snapshot_mem_02_e5b.dat'); E5bI_sc = SecondaryPRNCode('E5bI'); NumberOfSamples = floor(E5bI_sc.ChipPeriod/samples.SamplingPeriod); NumberOfPeriods = 1; E5bI_pc = PrimaryPRNCode('E5bI', NumberOfSamples, 1); E5bQ_pc = PrimaryPRNCode('E5bQ', NumberOfSamples, 1); samples.loadSamples(NumberOfSamples*(NumberOfPeriods+1)); acq = Acquisition('E5b', samples.FrequencyOffset); for SVID = 1:50 fprintf(1, 'Acquiring E5b PRN %d ... \n', SVID); acq.Acquire(samples, NumberOfPeriods, 1e-3, SVID, E5bI_pc, E5bQ_pc); if (acq.DetectionStatus) fprintf(1, 'E5b PRN %d successfully acquired! \n', SVID); figure(SVID); clf; [m n] = size(acq.CCF); plot((1:m)*samples.SamplingPeriod, abs(acq.CCF),... (1:m)*samples.SamplingPeriod, repmat(acq.Threshold, m, 1)); xlabel('Time [s]'); ylabel('CorrOut [-]'); legend('CCF','Threshold'); end end